Skip to content

Comments

feat(swift-sdk): add support for v3 queries#3004

Merged
QuantumExplorer merged 5 commits intofeat/iOSSupportfrom
feat/support_v3
Jan 21, 2026
Merged

feat(swift-sdk): add support for v3 queries#3004
QuantumExplorer merged 5 commits intofeat/iOSSupportfrom
feat/support_v3

Conversation

@alfie-dash
Copy link
Collaborator

Issue being fixed or feature implemented

This PR adds iOS support for the Dash Platform SDK, including:

  • Fix for bls-signatures compilation on Apple Silicon (arm64)
  • Fix for TLS certificate loading on iOS
  • New FFI bindings for Platform address queries (getAddressInfo, getAddressesInfos)
  • Swift SDK wrapper and example app UI for address queries

What was done?

iOS Build Fixes

  • Enabled apple feature for bls-signatures in rs-drive-abci/Cargo.toml to fix arm64 compilation
  • Modified rs-dapi-client/src/transport/tonic_channel.rs to conditionally compile native TLS root loading (not supported on iOS)
  • Updated swift-sdk/build_ios.sh to dynamically find available iOS simulators

Address Query FFI Implementation (rs-sdk-ffi)

  • Added DashSDKAddressInfo and DashSDKAddressInfoMap C-compatible types in types.rs
  • Implemented dash_sdk_address_fetch_info() for single address queries
  • Implemented dash_sdk_addresses_fetch_infos() for batch address queries
  • Added panic protection with catch_unwind for FFI safety
  • Added memory management functions for proper cleanup

Swift SDK Integration

  • Created PlatformAddressInfo model with bech32m encoding support
  • Created Addresses service class with convenience methods
  • Integrated into main SDK class
  • Added AddressQueriesView SwiftUI view with support for:
    • Single and batch address lookups
    • Auto-detection of address format (bech32m/hex)
    • Display of balance in both credits and DASH

How Has This Been Tested?

  • Built iOS XCFramework using build_ios.sh
  • Tested address queries in SwiftExampleApp on iOS Simulator
  • Verified bech32m address encoding/decoding
  • Tested error handling and panic protection

Breaking Changes

None

Checklist:

  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have added or updated relevant unit/integration/functional/e2e tests
  • I have added "!" to the title and described breaking changes in the corresponding section if my code contains any
  • I have made corresponding changes to the documentation if needed

For repository code-owners and collaborators only

  • I have assigned this pull request to a milestone

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jan 19, 2026

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@alfie-dash alfie-dash changed the title Add support for v3 queries feat(iOS): Add support for v3 queries Jan 19, 2026
@alfie-dash alfie-dash changed the title feat(iOS): Add support for v3 queries feat(sdk): Add support for v3 queries Jan 19, 2026
@alfie-dash alfie-dash changed the title feat(sdk): Add support for v3 queries feat(sdk): add support for v3 queries Jan 19, 2026
@QuantumExplorer QuantumExplorer changed the title feat(sdk): add support for v3 queries feat(swift-sdk): add support for v3 queries Jan 21, 2026
@QuantumExplorer QuantumExplorer merged commit f1ef413 into feat/iOSSupport Jan 21, 2026
5 of 8 checks passed
@QuantumExplorer QuantumExplorer deleted the feat/support_v3 branch January 21, 2026 14:05
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