Two days back, I’ve submitted an update for Permute to the App Store. Regular update (v3.8.6) that fixed a few things and added a few options – stuff people – or actually you, Permute’s users – are waiting for.
The update got rejected because someone at Apple suddenly (this feature in this form has been around from the very beginning) decided that Permute does not correctly implement the option to detect external subtitles. This feature allows Permute to detect .srt or .ass files in the same folder as the video file and merge them together.
So where is the caveat? Sandboxing. As Permute is sandboxed, it only has access to files that you open with it. If you open a .mp4 file, macOS grants Permute access to that particular file, but not to the parent folder. So, by default, Permute cannot detect the external subtitles files automatically (note: non-App Store builds use an additional entitlement to do this without the following).
In order for Permute to be allowed to automatically scan the folder, it needs to show you an Open dialog where you select the root folder (i.e. your start-up drive, in technical terms the path “/”). This is so that it covers external drives as well.
Now, out of the blue, Apple has decided the the open dialog must not open with the root folder selected, but must be opened with the home folder selected. Don’t ask me why. I’ve responded, they rejected again. So what’s the big deal? Most people will just confirm the dialog without thinking about it too much, meaning that they will suddenly find themselves with Permute that can only perform this feature (scanning external subtitles) only within their home folder and not on external drives.
Apple’s reasoning is that if the user wants to, they will select the root folder… But who knows the implications right away? Or even thinks about these dialogs too much? In the Mac experience, volumes are shown on your Desktop, so the user may as well assume that external volumes are covered as Desktop is in your home folder – yet they are not.
In the end:
- Apple is forcing me to make the app harder to use, break a feature for many people and cause me to spend a lot of time on support, explaining my customers why the app is not working on external volumes…
- Apple is hurting you by crippling apps that you’ve already purchased.
And that’s what you get when you buy apps via the App Store. Subpar experience because someone at Apple decides that they’ve got the power to make me do something and they will stick with it. And then Apple wonders why are developers sick and tired of the App Store…
EDIT: In case you are fans of irony – the official rejection reason says “app does not achieve the core functionality” – yet it does and Apple is forcing me to break it.