3 ms·
> [This] function, which returns true if the current app matches the specified bundle ID and is linked on or prior to the macOS version. Thus, older versions of
by AceJohnny2 8y ago
> [This] function, which returns true if the current app matches the specified bundle ID and is linked on or prior to the macOS version. Thus, older versions of the app would have the fix applied, while newer versions built with a newer SDK would not.
This it notable. It means Apple is ensuring backwards compatibility. Even if an updated version of your app (as detected by what OS it linked against) fixes things, these patches are still around for older versions of the app people may still be running.
Backwards compatibility never ages out...
- Lorkki 8y agoI agree that there's a sound reason for this, but I can't help but think that API versioning would be the more correct way to do it. This is how you pile up unnecessary complexity.
- macintux 8y agoI’d agree, except what Apple is doing here is orthogonal to backwards compatibility. They’re fixing buggy apps, some of which are buggy because they rely on undocumented behavior.
- rarepostinlurkr 8y agoIf it worked yesterday and after an OS update it still works how is that not backwards compatibility? Does it matter to a user if the change was due to some “buggy apps”? If it works, it works.
- AceJohnny2 8y ago> but I can't help but think that API versioning would be the more correct way to do it I'm not sure what you mean, because to me that's what they're already doing, where the API version maps to the OS version. When compiling in XCode, you can select which OS version you're targeting, and that essentially gives you which API version you're targeting.