Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

iOS Simulator open: simctl openurl has no timeout and can hold the open until the daemon request times out

Đã đóng
#3,101 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức phù hợp với người mới
78/100
Loại issue
Lỗi
Độ rõ ràng
Đặc tả rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
ios, typescript
Lĩnh vực
mobile, testing

Hướng nghiên cứu

Start in packages/platform-apple/src/core/app-launch.ts at openIosSimulatorUrl and compare its simctl bounds with the other launch calls. Add the unit test described for a provider whose openurl never returns, then verify the open fails within the bound with the typed reason and that cancellation kills the child. Update the open help where the other launch bounds are documented.

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

Mô tả

What happens

openIosSimulatorUrl (packages/platform-apple/src/core/app-launch.ts) runs xcrun simctl openurl <udid> <url> with no timeoutMs. When CoreSimulator is wedged (seen twice on 2026-10-01 under host load 215–691 while working #3096, and once on CI run 36843756495 step 87 where openurl answered NSPOSIXErrorDomain 60 only after its own long internal wait), the open holds until the daemon request timeout (450–630 s in those runs), and the simctl openurl child outlives the daemon's kill of the request.

Every other simctl call the open makes is bounded (listapps, plutil, the terminate calls at 2 s). openurl is the one that can take minutes.

Required behavior

  • simctl openurl runs under a bound of its own, shorter than the open's request budget, and takes the request signal so a cancel kills the child.
  • A timed-out openurl fails the open with a typed reason (dispatched: unknown: the URL may have been delivered) rather than letting the daemon request time out around it.

Completion conditions

  • A unit test with a provider whose openurl never returns: the open fails within the bound with the typed reason, and the child receives the kill.
  • The bound and its reason are documented in the open help where the other launch bounds are.
Ngôn ngữ chính
TypeScript
Star
4.9k
Fork
328
Merge trung bình
12 giờ 18 phút
Pull request đã merge (30 ngày)
561

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của callstack/agent-device

Tất cả issue của callstack/agent-device

Issue tương tự

Thêm issue về TypeScript

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.