Skip to content

Move embed's reqwest to 0.13, native-tls on watchOS - #15

Merged
paydii merged 1 commit into
developmentfrom
fix/reqwest-0.13-watchos-native-tls
Oct 17, 2026
Merged

paydii merged 1 commit into
developmentfrom
fix/reqwest-0.13-watchos-native-tls

Conversation

@setoelkahfi

Copy link
Copy Markdown
Contributor

The embed feature's optional reqwest was 0.12 with rustls-tls-native-roots, which pulls in ring. ring 0.17.14 fails its _ASSUMED_POINTER_SIZE asserts on arm64_32-apple-watchos, which blocks the SplitFire AI Watch app's arm64_32 slice (App Store Connect error 90733). It also put two reqwest versions in the graph, because ed-acp and rmcp are already on 0.13.

reqwest is now 0.13 with json plus rustls on every target except watchOS, where it uses native-tls (Security.framework). embed = ["dep:reqwest"] is unchanged.

embed::fetch_key only uses Client::new, post, bearer_auth, header, timeout, send, status and bytes, which are the same in 0.13, so there are no source changes. cargo check --features embed passes, and Cargo.lock has a single reqwest.

The watchOS build also needs the onde-ed change that does the same for ed-acp and ed-mcp (ondeinference/ed#41).

The optional reqwest dependency was 0.12 with rustls-tls-native-roots,
which pulls in ring. ring fails its pointer-size asserts on
arm64_32-apple-watchos. It also left two reqwest versions in the graph,
since ed-acp and rmcp are already on 0.13.

reqwest is now 0.13 everywhere: rustls on most targets, native-tls
(Security.framework) on watchOS. embed::fetch_key needed no source
changes; cargo check --features embed passes.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>

@sigit-code-review sigit-code-review Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This change updates the embed feature's optional reqwest dependency from version 0.12 to 0.13, switching from rustls-tls-native-roots to rustls on all platforms except watchOS, where it uses native-tls to avoid build issues with ring on arm64_32 watchOS. The Cargo.toml is modified to conditionally depend on reqwest 0.13 with appropriate TLS features per platform. No source code changes are needed as the used reqwest API remains compatible. This resolves a build failure on watchOS arm64_32 and removes duplicate reqwest versions in the dependency graph.


Automated review by siGit Code Review · commit 057e235 · see the review dashboard

@setoelkahfi
setoelkahfi requested a review from paydii October 16, 2026 22:40
@setoelkahfi setoelkahfi self-assigned this Oct 16, 2026
@paydii
paydii merged commit 727304c into development Oct 17, 2026
2 checks passed
@paydii
paydii deleted the fix/reqwest-0.13-watchos-native-tls branch October 17, 2026 05:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants