Skip to content

dsh-ios v0.1.0-rc.6

Pre-release
Pre-release

Choose a tag to compare

@finiking finiking released this 02 Sep 17:50
· 3 commits to main since this release

dsh-ios v0.1.0-rc.6

真机构建的目标设备,从此和 WDA 路径说同一种 id;签名团队不再写死。/ Device builds now name the destination the way the WDA path already did, and the signing team is no longer hardcoded.

🐛 修复 / Fixed

  • 真机构建的 -destination 传 CoreDevice 标识符 / Device builds passed the CoreDevice identifier as the destination#4)—— ios_sim_build_run 的真机分支把 devicectl 的 CoreDevice UUID 交给 xcodebuild -destination platform=iOS,id=…,而 WebDriverAgentRunner 构建路径用的是硬件 UDID。现在两条路径一致使用硬件 UDID,只在 devicectl 未报硬件 UDID 时回退。/ The device branch handed xcodebuild the CoreDevice UUID while the WDA runner build used the hardware UDID. Both paths now use the hardware UDID, falling back only when devicectl reports none.
  • exit 70 的错误信息只有一份设备列表 / An exit-70 failure showed only the destination list#4)—— xcodebuild 打印 "Available destinations" 时,错误现在带上插件进程实际使用的 id=、scheme 和 DEVELOPER_DIR,可以直接和手动跑通的命令逐项对比。/ When xcodebuild dumps "Available destinations", the error now states the id, scheme and DEVELOPER_DIR the plugin process used.

🔧 改进 / Changed

  • DEVELOPMENT_TEAM 可配置 / DEVELOPMENT_TEAM is configurable#4)—— WebDriverAgentRunner 构建的签名团队按 显式选项 > 环境变量 DSH_IOS_TEAM_ID > 登录钥匙串里第一个 Apple Development 身份 > 旧默认值 解析,日志会写明来源。DSH_IOS_WDA_BUNDLE_ID 同样可覆盖 runner 的 bundle id。其他团队不再需要 sed 改 lib。/ The WDA runner's signing team resolves as option > DSH_IOS_TEAM_ID > the first Apple Development identity in the login keychain > the legacy default, and the log names the source. DSH_IOS_WDA_BUNDLE_ID overrides the runner bundle id the same way.

🧪 验证 / Verification

typecheck、build、devicectl 与 WDA 夹具套件全绿;scripts/dev-realdevice-smoke.mjs 新增回归断言,把硬件 UDID 的选择回退成旧代码时会变红(已实际验证)。

坦白一句:exit 70 未在我们的机器上复现 —— 本机 Xcode 26 对两种 id 都能解析出设备,报告人的双 Xcode 环境(DEVELOPER_DIR / scheme 自动选取)仍是待确认的嫌疑,#4 保持打开。/ Honest caveat: exit 70 did not reproduce here — on Xcode 26 both id forms resolve. The reporter's two-Xcode environment remains the open suspect; #4 stays open.

⚠️ 升级注意:钥匙串里有 Apple Development 身份的用户,WDA 签名团队会从旧默认值切换为该身份的团队。要钉住旧行为,设 DSH_IOS_TEAM_ID=5CHT5RB9C3。/ Upgrade note: with an Apple Development identity in the keychain, the WDA signing team switches from the legacy default to that identity's team. Pin the old behaviour with DSH_IOS_TEAM_ID=5CHT5RB9C3.

🙏 致谢 / Credit

感谢 @mikeanan#4 中的详细报告与 DEVELOPMENT_TEAM 的建议。/ Thanks to @mikeanan for the detailed report in #4 and the DEVELOPMENT_TEAM suggestion.

📦 安装 / Install

dsh plugin --profile web add @zseven-w/dsh-ios@latest
dsh web

Full Changelog: v0.1.0-rc.5...v0.1.0-rc.6