Tkinter apps can't be distributed on the macOS App Store
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 77.2k
- Forks
- 35.9k
- PR merge metrics
- PR metrics pending
Description
Bug report
Bug description:
If you use tkinter in your app, and package the app for distribution in the macOS App Store, the app will be rejected with a message to the effect that:
Guideline 2.5.1 - Performance - Software Requirements
Your app uses or references the following non-public or deprecated APIs:
Contents/Frameworks/Python.framework/Versions/3.12/lib/libtk8.6.dylib
Symbols:
• _NSWindowDidOrderOnScreenNotification
The use of non-public or deprecated APIs is not permitted on the App Store, as they can lead to a poor user experience should these APIs change and are otherwise not supported on Apple platforms.
(or similar).
This appears to be a known issue in Tk.
This ticket is mostly to log the issue as something that can affect macOS users; there's not much we can do to fix it until such time as Tk fixes the problem and releases the fix in a version that Python can incorporate into a release (or, I guess, Apple changes their App Store review policies).
CPython versions tested on:
3.14, 3.13, 3.12, 3.11, 3.10, 3.9, CPython main branch
Operating systems tested on:
macOS
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The report names no CPython file or test; start by reading the linked Tk issue and comparing the macOS App Store rejection across the listed Python versions. Done would require a Tk fix released and incorporated into CPython, or a change in Apple's review policy; the issue says no CPython fix is currently available.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- macos, python
- Domain
- desktop, operating-systems
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100