open-standards/openpay/crates/op-ffi-swift/Cargo.toml
Transaction Science 70ecd6caa0 Initial import — three open standards under one shelf
Transaction Science open standards monorepo. Each subdirectory is a
self-contained reference protocol with its own README and licence.

- openpay/    Apache-2.0  payment-acceptance stack (Rust, 26 crates)
- smart-byte/ CC-BY-4.0   content-addressed value carrier (spec)
- eoc/        CC-BY-4.0   energy-optimised compute (spec)

The wire format and the right to fork are public. The optional hosted
services are the offer; the protocols are not.
2026-05-23 07:58:09 -04:00

43 lines
1.5 KiB
TOML

[package]
name = "op-ffi-swift"
version.workspace = true
edition.workspace = true
rust-version.workspace = true
license.workspace = true
repository.workspace = true
description = "OpenPay Swift / iOS / macOS FFI bridge via swift-bridge + a plain C ABI fallback."
publish = false
# Build a staticlib so Xcode can link us into an .xcframework. cdylib is
# also useful for macOS development. Both can coexist; Cargo emits both.
[lib]
crate-type = ["staticlib", "cdylib", "rlib"]
[dependencies]
# op-core is pulled in transitively through op-vault and op-fraud;
# we don't depend on it directly.
op-vault = { path = "../op-vault", features = ["in-memory"] }
op-fraud = { path = "../op-fraud" }
# Card and A2A rails are intentionally NOT pulled in here. Swift apps
# that need them depend on the C ABI fallback and link the relevant
# crate at the workspace level. The rails carry heavy transport deps
# (ureq, rustls, OAuth) that aren't appropriate for every iOS bundle —
# many merchant apps only use card-via-PSP and want the smallest
# binary.
# swift-bridge 0.1.59 is the latest stable as of 2026-05. We pin the
# minor series since this project's MSSV (minimum supported Swift
# version) policy is tight and we want to control upgrade timing.
swift-bridge = "0.1"
thiserror = { workspace = true }
[build-dependencies]
swift-bridge-build = "0.1"
[features]
default = []
# Build only the C ABI surface, skipping swift-bridge codegen. Useful
# for consumers using @_silgen_name directly or shipping a hand-written
# Swift wrapper.
c-only = []