Releases: OpenZesame/Zesame
Releases · OpenZesame/Zesame
2.0.0 — Swift 6.1, Combine, URLSession, K1
First release in 4 years. A major migration under the hood; the public API is reshaped accordingly.
Highlights
- Swift 6.1 toolchain (Swift 5 language mode). Raises deployment targets to macOS 13 / iOS 16.
- RxSwift → Combine.
ZilliqaServiceReactivenow vendsAnyPublisher<_, Zesame.Error>viaservice.combine.*. Rx APIs are removed. - Async/await is the primary
ZilliqaServiceAPI; Combine is a thin wrapper over it. - K1 (libsecp256k1) replaces EllipticCurveKit for signing and key handling.
- URLSession replaces the previous HTTP stack.
DefaultAPIClientnow surfaces non-2xx HTTP responses asHTTPError.unacceptableStatusCodeinstead of masking them as decoding errors. - CryptoSwift removed. Scrypt/PBKDF2/AES use
CryptoKitand Apple'sCommonCrypto. - Protobuf regenerated against current apple/swift-protobuf.
Safety fixes
Data(hex:)now rejects non-hex characters (previously silently truncated). Odd-length input is left-padded with a leading0. A failableData(validatingHex:)is available for untrusted input.KeyRestoration(privateKeyHexString:...)uses the failable variant and throws.badPrivateKeyHexon bad input.- Combine publishers returned by
callAsynccancel their underlyingTaskwhen the subscription is cancelled.
Tooling
- Pre-commit hooks:
typos,SwiftFormat,SwiftLint, and aswift testgate. - GitHub Actions CI runs the test suite on macOS with Xcode 16.
- Coverage tooling under
scripts/with ajust cov/just cov-detailedentry point. - 329 tests across 70 suites.
Dependencies
- K1
0.3.7+ - BigInt
5.7.0+ - swift-protobuf
1.26.0+
Change min/default gasLimit to 50
Merge pull request #52 from OpenZesame/increase_default_gasLimit Increase min gasLimit to 50 for payments