Description
Bug report
Bug description:
This is not a bug in the traditional sense, but I recently went through an ordeal where updates to my app on Apple's App Store (Mac App Store to be specific) started to be rejected after updating my bundled version of Python from 3.11 to 3.12.
It took me quite a while to get to the bottom of this so I wanted to mention it here in case it saves others some pain.
Here is the rejection note I was getting:
Guideline 2.5.2 - Performance - Software Requirements
The app installed or launched executable code. Specifically, the app uses the itms-services URL scheme to install an app.
Eventually I learned that the offending files were Lib/urllib/parse.py
and its associated .pyc. It seems that an 'itms-services' string was added here in Python 3.12 and it seems that Apple is scanning for this string and auto-rejecting anything containing it (at least in my case).
After removing that string from my bundled copy of Python, my update finally passed review.
Has anyone else run into this? Would it be worth slightly obfuscating that string or something to avoid triggering that rejection? With Python set to officially support iOS in the next release it would be a bummer if it is unable to pass App Store reviews out of the box.
CPython versions tested on:
3.12
Operating systems tested on:
macOS
Linked PRs
- gh-120522: Add a
--with-app-store-compliance
configure option to patch out problematic code #120984 - [3.13] gh-120522: Add a
--with-app-store-compliance
configure option to patch out problematic code (GH-120984) #121173 - [3.12] gh-120522: Add a
--with-app-store-compliance
configure option to patch out problematic code (GH-120984) #121174 - gh-120522: Apply App Store compliance patch to installed products, not source #121830
- gh-120522: Revert "Add a
--with-app-store-compliance
configure option to patch out problematic code" (gh-120984) #121844 - [3.13] gh-120522: Revert "Add a
--with-app-store-compliance
configure option to patch out problematic code" (gh-120984) (GH-121844) #121845 - gh-120522: Apply App Store compliance patch during installation #121947
- [3.13] gh-120522: Apply App Store compliance patch during installation (GH-121947) #122105