Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

Report the pending simulator command when platform initialization times out

未关闭
#300 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

维护者通常 1 天内回复

还没有人认领这个 Issue。

评估

难度
3/5
预计耗时
1-2 天
新手友好度
52/100
Issue 类型
功能
描述清晰度
基本清楚
活跃度
活跃
技术栈
ios, react-native, typescript

调研方向

Start from withPlatformReadyTimeout and PlatformReadyTimeoutError, then trace how runner initialization and finite simulator setup calls such as getAppInfo are invoked and whether they receive the session abort signal. Reproduce the pending app lookup with mocked subprocesses as described, since the timeout currently reports only the generic error. Done means the timeout includes the active operation, command, simulator identity and elapsed time, and finite simulator setup commands forward cancellation.

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

描述

On Harness 1.5.0, an iOS Simulator command that stays pending during setup is reported only as:

The platform did not become ready within 420000ms. Increase "platformReadyTimeout" if your device, simulator, or emulator needs more time to start.

In this CI run, simctl bootstatus returned after about 4m 39s. Harness then started xcrun simctl appinfo <udid> com.margelo.nitro.example, with no further command completion before the seven-minute startup deadline. No tests ran:

https://github.com/margelo/nitro/actions/runs/40677820821/job/122787663933

The logs establish the pending startup operation, but do not establish why CoreSimulator stalled. This is separate from the missing-app exit-code handling in #223.

withPlatformReadyTimeout races the entire runner initialization against one generic timeout. It has no context about the current platform operation. Several finite simulator setup calls, including getAppInfo, also do not receive the session abort signal, so they can keep running after the setup deadline.

I reproduced the reporting behavior against the published packages with mocked subprocesses: non-zero boot/app lookup failures propagate their original errors, but a successful boot followed by a pending app lookup produces only PlatformReadyTimeoutError.

Could initialization report the active operation, command, simulator identity, and elapsed time on timeout, while forwarding cancellation through all finite simulator setup commands? That would distinguish a boot stall from an app lookup or installation stall without changing platformReadyTimeout.

主要语言
TypeScript
星标
335
派生
23
平均合并
1 天 8 小时
30 天内合并 PR
54

环境准备

从这里开始

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

callstackincubator/react-native-harness 的其他 Issue

查看 callstackincubator/react-native-harness 的全部 Issue

相似的 Issue

更多 TypeScript Issue

把新 issue 发到你的邮箱

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