beeware / beeware/Python-Apple-support
Xcode 16 generates DWARF/dSYM warnings during packaging for App Store
- 主要言語
- Makefile
- スター
- 1.4k
- フォーク
- 209
- 平均マージ
- 2時間 58分
- マージ済み PR(30日)
- 7
説明
### Describe the bug
As of Xcode 16, archiving an iOS app for submission to the App Store leads to a large number of warnings during the validation process.
### Steps to reproduce
1. Generate a HelloWorld iOS app with Briefcase
2. Add a developer identity to the project
3. Select Archive from the Product menu
4. Select the recently generated archive from the list in the archive window
5. Click "Validate App", then Validate
6. Wait for the validation report
### Expected behavior
No validation issues should be found.
### Screenshots
_No response_
### Environment
- Operating System: macOS 15.3.2, Xcode 16.3
- Python version: 3.13
- Software versions:
- Briefcase: 0.3.23
### Logs
The validation log will list a single issue with Python.framework, and with each of the binary modules included in the app:
```
Upload Symbols Failed
The archive did not include a dSYM for the Python.framework with the UUIDs [87F39C90-34C0-3669-89EA-B18F5F01DBCC]. Ensure that the archive's dSYM folder includes a DWARF file for Python.framework with the expected UUIDs.
Upload Symbols Failed
The archive did not include a dSYM for the _asyncio.framework with the UUIDs [89363EE2-D685-3DF8-A31B-99A9E597B564]. Ensure that the archive's dSYM folder includes a DWARF file for _asyncio.framework with the expected UUIDs.
Upload Symbols Failed
The archive did not include a dSYM for the _blake2.framework with the UUIDs [9509B0A6-CB26-3D32-AAAB-E6A781581B15]. Ensure that the archive's dSYM folder includes a DWARF file for _blake2.framework with the expected UUIDs.
...
```
### Additional context
These are *warnings* - they do not prevent submission of the app to the App Store. However, it would be desirable to have no warnings during the build process.
A dSYM folder can be generated after compilation using `dsymutil -o .dSYM`; however, it needs to be generated at the same time as compilation to ensure that source file references can be generated.
コントリビューションガイド
調査の方向性
まず、macOS 15.3.2 および Xcode 16.3 上で Briefcase 0.3.23 を使用して「Archive」と「Validate App」の手順を再現し、次に検証ログを調べて Python.framework とバイナリモジュールの不足している dSYM を確認します。言及されている dsymutil コマンドを含め、パッケージングとコンパイルの経路を確認します。アーカイブが「Upload Symbols Failed」の警告なしに検証されれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- python
- 領域
- build-system, mobile-dev
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 35/100