Archive for March 13, 2025

Thursday, March 13, 2025

Swift Proposal: Import Objective-C Completion Handler Parameters As @Sendable

SE-0463:

The @Sendable annotation indicates that closure parameters are passed over an isolation boundary before they’re called. A missing @Sendable annotation in a library has negative effects on clients who call the function; the caller can unknowingly introduce data races, and SE-0423: Dynamic actor isolation enforcement from non-strict-concurrency contexts injects runtime assertions for non-Sendable closure parameters that are passed into libraries that don’t have data-race safety checking. This means that a missing @Sendable annotation can lead to a runtime crash for any code that calls the API from an actor isolated context, which is extremely painful for projects that are migrating to the Swift 6 language mode.

There’s a large category of APIs with closure parameters that can be automatically identified as @Sendable functions, even if the annotation is missing: Objective-C methods with completion handler parameters. @Sendable is nearly always the right default for Objective-C completion handlers, and programmers have already been searching for an automatic way for completion handlers to be @Sendable by default when auditing Clang headers.

[…]

If a completion handler does not cross an isolation boundary before it’s called, the parameter can be annotated in the header with the @nonSendable attribute using __attribute__((swift_attr("@nonSendable"))).

[…]

Changing this proposal later to use sending instead will pose source compatibility issues, because it would become invalid to have a protocol requirement that is imported with a sending completion handler and implement the requirement with a @Sendable completion handler. The same source compatibility issue exists for overridden class methods.

Previously:

Mozilla Also Defends Google Revenue Sharing Agreement

Thomas Claburn:

Mozilla, which in 2023 received about 75 percent of its revenue from royalties paid by Google and other search providers for search engine usage in Firefox, worries that the US Justice Department’s proposed ban on the very same Google Search payments would be rather harmful.

[…]

Google’s payments to Apple for making its search service the default in the Safari browser, which reached around $20 billion in 2022, discouraged competition, as the Justice Department argued and the court agreed. However, by banning such payments to browser makers, the government’s remedy could choke off Mozilla’s primary revenue source, putting its operations (and non-trivial executive paychecks) at risk.

“These proposed remedies prohibiting search payments to small and independent browsers miss the bigger picture – and the people who will suffer most are everyday internet users,” said Mark Surman, president of Mozilla, in a statement Monday.

Alexander Pushkov at al. (Hacker News):

While Mozilla has always championed user privacy and an open web, the increasing reliance on Google for revenue raises important questions about our shared commitment to these values.

Now is the time for Mozilla to take bold steps to reinforce its identity as a privacy-centric nonprofit and to prioritize the Firefox browser as the heart of your mission.

It is time to reevaluate the partnership with Google and seek alternatives that align with Mozilla’s values. By distancing itself from Google, Mozilla can reaffirm its commitment to user privacy and autonomy, fostering trust among its user base.

Previously:

Rotten

John Gruber (Mastodon, Bluesky, Hacker News, MacRumors, Mac Power Users, AppleInsider):

But we didn’t see all aspects of Apple Intelligence demoed. None of the “more personalized Siri” features, the ones that Apple, in its own statement announcing their postponement, described as having “more awareness of your personal context, as well as the ability to take action for you within and across your apps”. […] There were no demonstrations of any of that. Those features were all at level 0 on my hierarchy. That level is called vaporware. […] What Apple showed regarding the upcoming “personalized Siri” at WWDC was not a demo. It was a concept video. Concept videos are bullshit, and a sign of a company in disarray, if not crisis.

[…]

Careers will end before Apple might ever return to the level of “if they say it, you can believe it” credibility the company had earned at the start of June 2024.

Damaged is arguably too passive. It was squandered. This didn’t happen to Apple. Decision makers within the company did it.

Who decided these features should go in the WWDC keynote, with a promise they’d arrive in the coming year, when, at the time, they were in such an unfinished state they could not be demoed to the media even in a controlled environment? Three months later, who decided Apple should double down and advertise these features in a TV commercial, and promote them as a selling point of the iPhone 16 lineup — not just any products, but the very crown jewels of the company and the envy of the entire industry — when those features still remained in such an unfinished or perhaps even downright non-functional state that they still could not be demoed to the press? Not just couldn’t be shipped as beta software. Not just couldn’t be used by members of the press in a hands-on experience, but could not even be shown to work by Apple employees on Apple-controlled devices in an Apple-controlled environment? But yet they advertised them in a commercial for the iPhone 16, when it turns out they won’t ship, in the best case scenario, until months after the iPhone 17 lineup is unveiled?

Who said “Sure, let’s promise this” and then “Sure, let’s advertise it”? And who said “Are you crazy, this isn’t ready, this doesn’t work, we can’t promote this now?” And most important, who made the call which side to listen to? Presumably, that person was Tim Cook.

[…]

It’s easy to imagine someone in the executive ranks arguing “We need to show something that only Apple can do.” But it turns out they announced something Apple couldn’t do. And now they look so out of their depth, so in over their heads, that not only are they years behind the state-of-the-art in AI, but they don’t even know what they can ship or when. Their headline features from nine months ago not only haven’t shipped but still haven’t even been demonstrated, which I, for one, now presume means they can’t be demonstrated because they don’t work.

jeanlucp:

Wow. As an ex employee, this will create a tsunami. Good for you. We all felt this way. It’s all smoke and mirrors. They don’t have a serious plan. Siri should have been everyone’s wake up call. Your framing around “credibility” was excellent and just might move mountains. Hope so.

Sebastiaan de With:

Ex-MobileMe team here. This was a brutal time.

It was so bad that when he presented iCloud onstage, Steve said “I know what you’re thinking: why should I trust them? They’re the ones who gave us MobileMe!”

Ben Lovejoy:

Gruber has never been an Apple shill – he has voiced criticisms of the company on many occasions – but he has been someone who clearly has a close relationship with the iPhone maker. He’s one of a number of friendly ears Apple uses from time-to-time to help get a message out. So when Gruber goes thermonuclear in this way, that’s no small thing.

Nick Farina:

I’ve read Daring Fireball for 23 years and he has never come close to this level of criticism about the company. It reads like an obituary, and I agree with every word.

Ben Thompson:

Nailed it

Ryan Jones:

Alarm bells have rung in Cupertino. Their reaction sets the tenor.

Dave B.:

I think a lot of people are missing the point of Gruber’s piece.

The problem here isn’t that Apple Intelligence is bad/behind. That’s a symptom.

The problem is that the culture at Apple is broken and Apple has devolved into a company that will lie and promote mediocrity.

Zac Alan Cichy:

The road I’d have preferred?

“AI is early, but we’re all over it. Right now a lot of these early products don’t deliver at the quality and standards our customers expect. We’re focused on what matters to our customers, today.”

Eric Schwarz:

Rewatching the keynote after reading Gruber’s post jogged my memory and while I still have no interest in many of those features, it really does seem like Apple sold everyone a bill of goods.

With this failure, longstanding bugs, products like the Vision Pro that can’t justify their existence, and even the general arrogance towards regulators worldwide, Apple needs to step back and reflect why some of its biggest supporters have been so vocal lately. The company may still be successful on paper, but it does feel similar to the ineptitude that eventually led to the “bad” days in the ’90s.

M.G. Siegler:

My own mistake was that I assumed I would see it and that it would still suck. I did not expect not to see it. That’s the surprise here to me. Apple touted vaporware on stage.

[…]

Some believe this change may be related to security. Because this is Apple’s AI — Siri — handling your very personal data stored on your devices, there’s a far greater risk than with more “general” AI services, the thinking goes. It’s possible, and I wouldn’t be surprised if Apple uses that as an excuse/rationale regardless, as it fits their overall narrative well. But I think it’s just as likely — if not more so — that such features simply don’t work. That Siri simply doesn’t work. Again.

[…]

Yes, I was holding out hope that the innovations behind AI would start to slow enough that Apple could be the one to best productize such advances. But we’re not there yet. And so, in a weird way, it still feels as if Apple is too early in AI, at least for them.

They clearly — clearlyfelt pressured by Wall Street into rushing Apple Intelligence out the door. Cook can say he doesn’t “consider the bloody ROI” all he wants, he obviously does at least somewhat!

Juli Clover:

According to Kuo, Apple is already aware of Apple Intelligence’s “underwhelming performance,” and has provided suppliers with conservative iPhone shipment forecasts as a result.

Amy Worrall (Mastodon):

No, the smart Siri will need buy-in from developers. Devs will tell the system about nouns and verbs that their apps know about — the semantics of the app’s data model objects, and the actions users can take upon them. Additionally, using this structured data, apps will tell the system what the user is doing right now, thus providing the context that Siri can become aware of. It’s all built on top of the existing Intents and UserActivities that apps have already been using to integrate with Shortcuts, Spotlight, and a bunch of other bits of the system. But using those is optional, and even for an app that’s got a head start, the new supercharged versions will require extra work to adopt.

I suspect Apple was hoping that, by pre-announcing what’s coming, devs would rush to adopt these intents, so when smart Siri does ship, there’d be a bunch of apps ready for it. After all, if Apple shipped a user-facing feature that didn’t do anything yet because apps hadn’t adopted it, that wouldn’t be a good look either.

I don’t think that this was the entire reason for the pre-announcement, and nor do I think the pre-announcement was made with conscious knowledge that this delay would come. I see it more as something that might have tipped the balance slightly on an already contentious internal decision, and that it went hand in hand with a bit of naïve optimism about what could be accomplished in time.

However, even the APIs didn’t ship to developers until iOS 18.4 (which is still in beta).

max oakland:

Apple will need devs to buy in to their new tech. Too bad they spent the last decade + crapping all over devs

Goodwill isn’t just a nice thing. It’s self serving too. Apple forgot that in their rush to squeeze every dime from every person they could.

mtconleyuk:

Don’t really care about Apple Intelligence, don’t really care about ChatGPT, don’t really care about the whole AI bullshit fest, other than that it has the potential to destroy education, literacy, numeracy, and the planetary ecosystem. Those concerns aside, however, I do care that Apple management have caved to the hype to the extent that they feel they have to lie about this shit or they’ll be ‘left behind’.

Kaveh:

Something I haven't really seen anyone touch on relates to an example you point to in this article where Siri takes action for you across apps ala ”Send the email I drafted to April and Lilly”

Do you really trust Siri to do that? I don’t. I still have a hard time talking to Siri and trusting that it interpreted me correctly. At this point, I don't understand why they don't leave it behind and rebrand.

Trust is earned. Siri lacks trust.

Bicycle For Your Mind:

Reminded me of a Guy Kawasaki concept call “bozosity.” I think Apple is afflicted with that.

Om Malik:

I have my own explanation, something my readers are familiar with, and it is the most obvious one. Just as Google is trapped in the 10-blue-link prison, which prevents it from doing something radical, Apple has its own golden handcuffs. It’s a company weighed down by its market capitalization and what stock market expects from it.

They lack the moral authority of Steve Jobs to defy the markets, streamline their product lineup, and focus the company. Instead, they do what a complex business often does: they do more. Could they have done a better job with iPadOS? Should Vision Pro receive more attention?

The answer to all those is yes. Apple has become a complex entity that can’t seem to ever have enough resources to provide the real Apple experience. What you get is “good enough.” And most of the time, I think it is enough – because what others have on the market is worse. They know how to build great hardware; it’s the software where they falter.

Matt Birchler:

Another thing that came to mind for me recently is how many misses Apple has had with marketing in the past 12 months. Things started with the iPad Pro ad where they destroyed tons of creative tools, which people did not react well to, and Apple soon apologized for. Then there were the Apple Intelligence ads that were celebrating people being shitty employees and spouses with AI to trick people into thinking they were competent and loving. And now we have Apple pulling one of their premiere ads from the internet because it advertises an iPhone 16 feature that they have confirmed will not ship until at least the iPhone 17 is released later this year. It’s simply the sort of messiness I’m not used to seeing from Apple.

Rob Jonson:

If the iPhone was a properly open computer - then other folks would have figured out how to provide an amazing assistant.

Apple wouldn’t be in control - but their platform would be stronger - and their devices more valuable to own.

Previously:

Rumored Redesign in iOS 19 and macOS 16

Mark Gurman (Mastodon, MacRumors):

Apple Inc. is preparing one of the most dramatic software overhauls in the company’s history, aiming to transform the interface of the iPhone, iPad and Mac for a new generation of users.

The revamp — due later this year — will fundamentally change the look of the operating systems and make Apple’s various software platforms more consistent, according to people familiar with the effort. That includes updating the style of icons, menus, apps, windows and system buttons.

[…]

A key goal of the overhaul is to make Apple’s different operating systems look similar and more consistent. Right now, the applications, icons and window styles vary across macOS, iOS and visionOS. That can make it jarring to hop from one device to another.

I feel like we just had a major redesign, and it mostly made things worse. So, surely, there are many areas that need refinement, but this sounds like not that. With bugs everywhere and Apple Intelligence in disarray, why is Apple choosing to introduce even more chaos? Plus, they should not be doubling down on the mistaken idea that the problem with macOS is that it doesn’t look enough like iOS.

Nick Heer:

This is the same thing said by Alan Dye in introducing MacOS Big Sur’s overhaul less than five years ago: “we wanted consistency throughout the ecosystem, so users can move fluidly between their Apple devices”. I do not think this is a worthwhile goal unto itself. It is unclear to me how today’s Apple operating systems are insufficiently consistent in ways that are not beneficial to the user experience. I do not think MacOS, iOS, and VisionOS should all look and work the same because they are all used in completely different ways.

[…]

This has me excited and worried in similar measure. There are things on all of these products which could use rethinking. This could be the culmination of many years of rethinking every component and interaction to figure out what works best. But I do not think it is worth getting too hopeful for a rethink or even a reintroduction of depth and texture across Apple’s systems. This set of redesigns may be described here as “dramatic” but, given the number of users who depend on these operating systems, I doubt it will be. I do not think much re-learning will be expected, despite Gurman’s belief this will “go well beyond a new coat of paint like iOS 7”.

I am trying not to get too far in my thoughts until I see it for real, but I do not like the sound of more glassy, translucent effects. One of the most common phrases I have used in recent years of filing Apple bug reports is “insufficient contrast”. I am not optimistic that pattern will not continue.

Mario Guzmán:

“Consistency” is bullshit. Because it always tends to give way to the lowest common denominator.

Let the Mac be a Mac. Let the iPhone be an iPhone. Let the iPad be an even better iPhone. Lend to the individual strengths of each platform.

Maybe if each platform OS utilized its unique platform strengths, we wouldn’t need redesigns every 3-4 years. They’re expensive for them (and us, as devs).

They need to stop making my powerful desktop look/behave like an iPhone.

Pierre Igot:

I don’t know anyone who has ever complained that the differences between their phone’s UI and their computer’s UI made the experience of going from one device to the other “jarring”. There’s lots to complain about in iOS and in macOS, but none of it has anything to do with the fact that they are different.

John Gruber:

Gurman’s story is acting like Apple hadn’t already done this years ago.

Ben Lovejoy:

While the report is light on detail, the few clues it provide does make it sound like the upcoming software updates could almost a complete reversal of the flat look we’ve had for more than a decade …

With iOS 7, Apple ditched all the 3D and skeuomorphic elements in the UI in favor of very flat graphics which have remained in use ever since.

The report – which of course may or may not turn out to be accurate – says that the new look will be “loosely” based on visionOS.

Please not the circular icons.

Joe Rossignol:

Israeli website The Verifier was first to report about the potential visionOS-like redesign, but it said the changes were coming in iOS 18. It is possible that this report was accurate about the details, but wrong about the timeframe.

Then, earlier this year, Jon Prosser claimed that iOS 19 will feature a redesigned Camera app. In a video uploaded to his YouTube channel Front Page Tech, he shared renders of the app's alleged new design, revealing translucent menus and other visionOS-like elements. He speculated that the changes could extend to the Home Screen and beyond.

[…]

At a minimum, you can expect iOS 19 to have a more simplified and translucent appearance, if these rumors are true.

John Gruber:

Basic idea is something very much akin to the look and feel of VisionOS, but brought to the Camera app, and perhaps throughout the entire system (or just parts of it) in iOS 19. Seems cool, seems fresh, and seems aligned with where Apple has been heading.

M.G. Siegler:

Some recent iPadOS tweaks seem awfully visionOS-inspired. Same with some of the Apple Intelligence elements – well, the parts Apple has managed to ship, at least. And certainly Apple’s new Invites software follows some of these new paradigms. And it’s undoubtedly not a coincidence, as Parker Ortolani pointed out last month, that an entirely new app created by Apple was built using some new design ideas.

Apple has a long history of borrowing from their newer OSes and devices to extend older ones – just think about how much of iOS/iPadOS and even macOS started with watchOS ideas. While Apple may maintain that they absolutely positively do not want to merge the Mac and the iPad, they’ve essentially been doing so through software UI regardless.

Craig Hockenberry:

If Apple modifies the look of platform user interfaces, I’m guessing that SwiftUI will play a huge part in a successful transition.

[…]

Those of you who have been digging around in UIKit to accomplish things will have regrets.

[…]

Similarly, if you’ve been building apps with all kinds of wild design elements to make them look cool, you’re going to a bit of a rude awakening.

Those of us who were around for [iOS 7] and Aqua remember exactly what that felt like 😀

Steve Troughton-Smith:

I figured that was the case before the launch of visionOS, but that turned out to be UIKit all the way down and neither SwiftUI nor UIKit had any particular advantage for matching new system UI. And that was a whole new platform.

I really don't think it's going to be the case this time, either. Any SwiftUI app striving for high quality is going to have just as much of a pain in the ass working across both old and new styles as native code.

Only vanilla apps will have it easy.

what is almost guaranteed, by the unforgiving yearly cycle and the engineering effort otherwise wasted on AI, is that any major redesign in 2025 is not going to have anywhere near enough resources or time in the oven, so I expect a lot of pain and churn over the summer no matter which UI framework you choose

Amy Worrall:

Rumours: Apple are redesigning their operating systems Us: Oh god, please no!

Twenty years ago, we’d have heard this and been excited for what delights it would bring. These days, not so much.

Cabel Sasser:

To these veteran Mac coders, the reaction to Aqua was universally negative. People were actively very angry. It’s a waste! It’s ugly! It’s confusing! How could you. It went on and on, and I was surprised because Aqua looked cool and fun to me.

John Gruber:

The Aqua look and feel was definitely polarizing. And Apple dialed back its most exuberant details with each subsequent Mac OS X update — less transparency, subtler pinstripes (pinstripes!), etc. But iOS 7 was equally polarizing, and its excesses also got dialed back (or perhaps better, said, dialed back up) with each successive iOS release — a little more depth, some subtle hints of texture.

Either Apple is never going to ship an altogether new UI theme, or they’ll ship one and a large number of people will declare it utter garbage and proof that Apple has completely lost its way.

Why does that have to be the cycle? Why can’t they iterate internally and ship something that’s more refined instead of a design at the outset that’s obviously too much? Why do they have to throw out the old design soon after its excesses have mostly been fixed? It’s the same modus operandi as forcing an annual major OS release so that new features and bugs are being introduced just as the next major version goes into beta. It’s a treadmill that never arrives at a polished version.

CM Harrington:

I want to be on record saying that iOS7 and later still sucks in comparison to having actual buttons and other affordances.

Same with this ‘courageous’ new world of overloaded titlebars, overflow menus, and touch-centric controls on a mouse-centric UI.

Sure, maybe that wasn’t 20 years ago, but aside from System 7 to MacOS 8, and classic to OSX (the bones were good), Apple has been terrible at UI changes.

Scott:

Am I the only one who sees the news that Apple is having SIGNIFICANT problems with A.I./Siri running head first into the news that Apple is planning a significant UI/UX change with iOS 19/macOS 16? Is everyone at Apple on crazy pills?? Last thing we need is MOAR upheaval.

Alex:

I am just wanting a new snow leopard release where they just stop features and actually fix stuff so it works

Jeff Johnson:

Besides destroying the interface for users, every Apple OS redesign creates a massive amount of unpaid make-work for 3rd party developers.

Steve Troughton-Smith:

I dunno about other developers, but I’m not sure I have the energy to redesign all my apps this year if iOS is getting an iOS-7-style revamp 😐

Sean Heber:

Not exactly looking forward to that. Still haven't fully recovered from the psychic wounds of the iOS 7 redesign, tbh.

Isaiah Carew:

if i imagine all of macOS redesigned from the ground up with the same user hostile thoughtlessness of the System Settings…

…maybe it really is the year of Linux on the desktop.

Diego Barros:

they did a shit job with System Settings, and they reckon they are now doing the whole OS?

Kyle Hughes:

As if the SwiftUI community isn’t fragmented enough, wait until SwiftUI × iOS 19 is using a different design language 🙂

John Gruber (Mastodon):

If that’s the way it works out — with a new visual look drawing attention from lackluster progress on the AI front — surely the timing will be coincidental, but some accidents are happy accidents, as Bob Ross used to say.

[…]

There should be no question that all of what Lovejoy is saying here is true. If Apple launches an all-new systemwide UI theme for iOS 19, something even half as radical a change as iOS 7’s theme was, it will be the only thing most users notice or opine about.

[…]

Part of what makes Apple Apple is that the company is (or at least should be) led by people who both have great taste and trust their own instincts.

Jeff Johnson:

No, John, Apple was the company led by people who have great taste.

There is literally NOBODY remaining in Apple leadership who has great taste.

Reminder that Federighi thought the Catalyst apps got really good in the Catalina public beta and likes the new System Settings.

Gus Mueller:

Gripe #47853 of UI things on the Mac / from Apple slipping through QA.

This button is colored blue and looks like it would absolutely be the default button, but pressing return / enter does not activate it.

Mario Guzmán:

A lot of Mac apps coming out of Apple these days no longer behave like Mac apps. Is it SwiftUI? Is it Mac Catalyst? Not sure because at least in AppKit, it would just be standard out-of-the-box default behavior for this key button to accept return/enter from the keyboard.

You may think we’re being cynical or overreacting but this is now death by a thousand papercuts and we’re just not used to this being life-long Mac users (me since the 90s).

freediverx:

While the Apple Intelligence fiasco is recent, I’ve been complaining about the decline of Apple’s software for ten years.

It’s not just quality control, sloppiness, and inconsistency, but fundamentally bad user interface design glazed with inadequate AI features.

Previously: