beeware / beeware/Python-Apple-support

Xcode 16 generates DWARF/dSYM warnings during packaging for App Store

Đang mở
#286 6 bình luận 0 reaction 0 người được giao Xem trên GitHub
bug
Ngôn ngữ chính
Makefile
Star
1.4k
Fork
209
Merge trung bình
2 giờ 58 phút
Pull request đã merge (30 ngày)
7

Mô tả

### 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.

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

Bắt đầu bằng cách tái hiện các bước „Archive“ và „Validate App“ với Briefcase 0.3.23 trên macOS 15.3.2 và Xcode 16.3, sau đó kiểm tra log xác thực để tìm các dSYM bị thiếu cho Python.framework và các mô-đun nhị phân. Xem xét quy trình đóng gói và biên dịch, bao gồm lệnh dsymutil đã đề cập; công việc hoàn tất khi archive được xác thực mà không có cảnh báo „Upload Symbols Failed“.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
python
Lĩnh vực
build-system, mobile-dev
Loại issue
Lỗi
Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
35/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.