python / python/cpython

Tkinter apps can't be distributed on the macOS App Store

未关闭
#129,247 2 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

OS-mac topic-tkinter type-bug
主要语言
Python
星标
77.2k
派生
36k
PR 合并指标
PR 指标待抓取

描述

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

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

调研方向

该报告没有指出任何 CPython 文件或测试;首先阅读链接的 Tk issue,并比较所列 Python 版本在 macOS App Store 中被拒的情况。只有在 Tk 修复发布并集成到 CPython 中,或 Apple 更改其审核政策后,才算完成;该 issue 表示目前没有可用的 CPython 修复。

由索引模型根据 Issue 内容生成。

评估

技术栈
macos, python
领域
desktop, operating-systems
Issue 类型
缺陷
难度
5/5
预计耗时
一周以上
活跃度
停滞
描述清晰度
需要澄清
新手友好度
25/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。