Commit Graph

300 Commits

Author SHA1 Message Date
Lukas Korba 8301c4fb5f [#1469] Use Tor for single-shot lightwalletd requests
- LightWalletGRPCOverTor added with overrides for the new methods
- Lazy connection to both GRPC and Tor
- Delays for cases when TOR fails and fallbacks to direct connection
2025-05-30 18:52:49 +02:00
Lukas Korba 7e0ef54656 [#1469] Use Tor for single-shot lightwalletd requests
- TorLwdConn refactored to resolve SwiftLint issues and best practives
- TorLwdConn getInfo, getTreeState and latestBlockHeight methids implemented
- LightWalletGRPCService enhanced to use available TOR methods
- Code cleaned up
- Changelog updated
- documented tor connection methods
- torConnection initialization when fails, fallback to classic compactTxStreamer
2025-05-30 18:52:49 +02:00
Jack Grigg 28ae390458 Migrate to FFI 0.16.0 2025-05-13 19:38:19 +01:00
Lukas Korba e2956a190e Sync progress merged
- the progress is merged now but boolean value whether funds are spendable or not has been added extra
2025-04-11 14:36:34 +02:00
Lukas Korba f56fde9cb9 Adoption of sync & recovery progresses
Sync and recovery progresses

- FFI bumped to preview 0.15.0
- SDK has been refactored to incorporate recoveryProgress alongside scanProgress

Non-optional syncProgress

0 Denominator fix

OfflineTests fixed
2025-04-10 14:31:38 +02:00
Lukas Korba 179f960bea [#1537] Birthdate estimate based on a given date 2025-04-03 19:10:32 +02:00
Lukas Korba 8858e46dc9 Mocks generated 2025-03-21 11:11:06 +01:00
Lukas Korba 76dacb6ddf Offlinetests fixed 2025-03-06 12:27:36 +01:00
Lukas Korba d6ec441c67 Async removal because it's not needed, tests updated 2025-03-06 12:27:36 +01:00
Jack Grigg 8f9cb314d5 Merge branch 'main' into ffi-0.13.0 2025-02-28 02:48:46 +13:00
Jack Grigg 07b33f11a2 Migrate to second preview of FFI 0.13.0 2025-02-28 02:46:47 +13:00
Lukas Korba 3e788fa6e1 Offline tests fixes 2025-02-17 12:37:47 +01:00
Jack Grigg 57e12e2332 Migrate to first preview of FFI 0.13.0 2025-02-14 15:27:49 +13:00
Lukas Korba 3bea79c45a Comments updated 2025-01-09 09:12:10 +01:00
Lukas Korba a8b1524199 Review comments addressed 2025-01-07 10:43:42 +01:00
Lukas Korba da00a69b49 Pczt typealias and clean up
- The comments were provided
- Changelog updated
- Code cleaned up
- Tests fixed
- Error codes for the Pczt
2024-12-13 10:13:01 +01:00
Lukas Korba f499898ff5 Create and submit PCZT 2024-12-12 12:07:25 +01:00
Lukas Korba 30af9c6e82 PCZT API updated
- ufvk removed from the parameters
2024-12-10 20:57:59 +01:00
Lukas Korba 0fba7f2f3a PCZT methods updated
- Refactored to the proper types
2024-12-10 20:24:41 +01:00
Lukas Korba 6bab337568 PCZT methods
- also attempt to fix _uuid in views
2024-12-10 14:39:39 +01:00
Lukas Korba 8c099e3572 seedFingerprint and zip32AccountIndex parameters in importAccount added 2024-12-09 13:29:07 +01:00
Lukas Korba f69aa19fed Public importAccount method
- importAccount(ufvk, purpose, name, keySource) API
2024-12-09 12:12:13 +01:00
Lukas Korba 89773c6ad3 account_id -> account_uuid refactor 2024-12-09 10:48:07 +01:00
Lukas Korba 5179f4e1b0 getAccount for UUID
- rust backend `getAccount` method implemented, it returns Account with associated data
- `listAccount()` has been modified to return an array of Accounts instead of AccountUUIDs
2024-12-06 11:43:20 +01:00
Lukas Korba bb03333458 Performance, Network and Dark side tests
- updated to build and tests that are obsolete are now taken out of the bundle
2024-12-05 12:42:24 +01:00
Lukas Korba 05002a8a8f Generated mocks
OfflineTests fixes
2024-12-05 12:15:46 +01:00
Lukas Korba 27af6f134c PR Comments addressed and code cleaned up
- Comments in the code updated and cleaned up
- OfflineTests passes again, those failing has been removed from the bundle and marked to be fixed with a TODO

Fixes of build

- The SDK builds again
2024-12-05 10:31:13 +01:00
Lukas Korba 7a6bd7283e AccountUUID refactor - phase 2
- SDK builds again, UUIDs refactored everywhere in the SDK and demo app
- tests will follow in the next phase
- refactor of documented code in the follow up
2024-12-04 19:11:11 +01:00
Lukas Korba 35ddf87a1b [#1512] Ensure that the SDK does not assume a default account anywhere
- The SDK no longer assumes a default account. All business logic with instances of Zip32AccountIndex(<index>) has been refactored.
2024-12-03 13:01:44 +01:00
Lukas Korba 6505d5f865 PR Comments addressed
- Some comments updated to reflect reality
- Some Tests fixed
2024-11-29 08:57:24 +01:00
Lukas Korba 97137510b2 Zip32AccountIndex UInt32 refactor
- Zip32Account(Int32) has been refactored to Zip32AccountIndex(UIn32)
2024-11-25 11:32:55 +01:00
Lukas Korba a0535a6a82 [#1511] Refactor account representation from Int to a dedicated Account structure
- First iteration of all Int account references to an instance of an Account
2024-11-19 11:11:36 +01:00
Jack Grigg 1a92461690 Test arbitrary key derivation APIs against test vectors 2024-11-16 10:57:11 +13:00
Kris Nuttycombe 187753fc13 Fix offline test build errors. 2024-10-10 22:47:05 -06:00
Kris Nuttycombe 27aac3d035 Regenerate testing mocks. 2024-10-10 22:23:38 -06:00
Lukas Korba 802ebdfeb8 is_shielding
- A flag whether the transaction is a shielding one has been added to the ZcashTransaction.Overview

is_shielding

- Changelog updated
2024-09-06 10:04:20 +02:00
Lukas Korba 5b00cabd1c [#1466] Choose the best server by testing responses from multiple hosts
- Fixes
2024-09-05 08:51:53 +02:00
Lukas Korba 35c31a4317 [#1475] Adopt transaction data requests
- RustBackend extended for the new 2 rust methods 'transactionDataRequests' and 'setTransactionStatus'
- lightwalletservice extended to add a new method 'getTaddressTxids'
- Enhance action has been refactored to handle transactionDataRequests

[#1475] Adopt transaction data requests

- fixes

[#1475] Adopt transaction data requests

- Error codes for specific rust and service errors defined
- Fix for the txId

[#1475] Adopt transaction data requests

- Checkpoints added
- Code cleanup

[#1475] Adopt transaction data requests

- bugfixes in the ffi

[#1475] Adopt transaction data requests

- FFI with fixes

[#1475] Adopt transaction data requests

- Another FFI update with fixes, this time the final

[#1475] Adopt transaction data requests

- Fix for the not recognized state of the transaction for FetchTransaction(txId:)

[#1475] Adopt transaction data requests

- Code cleaned up and polished

[#1475] Adopt transaction data requests

- Changelog updated

[#1475] Adopt transaction data requests

- DemoApp settings reverted
2024-08-18 19:20:30 +02:00
Lukas Korba 99c46d0979 refresh-rates
- API refactored to Combine's CurrentValueSubject

refresh-rate

- FiatCurrencyResult is now Equatable

refresh-rates

- cleanup

refresh-rates

- The API has been refactored to follow the same principles as for state and events.
- Review comments addressed

refresh-rates

- The API has been extended to send a result of the operation, success or failure

refresh-rates

- bugfix of the try vs try?

refresh-rates

- reverted the error state

Update CHANGELOG.md

- changelog updated
2024-08-01 13:28:37 +02:00
Jack Grigg bce8085690 Add APIs for fetching the ZEC-USD exchange rate over Tor. 2024-07-30 11:02:10 +01:00
Jack Grigg a7f73c39f3 Migrate to first pre-release of FFI 0.9.0
Includes:
- Initialization changes to enable log filter customization. We now
  connect the Rust log level to the Swift log level, and always run
  other Rust initialization steps.
- ZIP 320 support (TEX addresses).
2024-07-30 11:01:41 +01:00
Jack Grigg 6f8d32cbc5 Use `DerivationTool.getAddressMetadata` inside `DerivationTool.isValid*`
This enables us to simplify the FFI backend.
2024-07-18 23:02:30 +01:00
Lukas Korba beb48dd0bd [#1462] Syncing is broken
- The CompactBlockProcessor's state machine got stuck in some cases at the updateChainTip action.

[#1462] Syncing is broken

- unit test fixed
2024-07-04 08:28:48 +02:00
Lukas Korba 528f380484 [#1452] TX Resubmission-the wallet has to periodically resubmit unmined transactions
- functional version is done

[#1452] TX Resubmission-the wallet has to periodically resubmit unmined transactions

- code cleanup

[#1452] TX Resubmission-the wallet has to periodically resubmit unmined transactions

- changelog updated

[#1452] TX Resubmission-the wallet has to periodically resubmit unmined transactions

- unit tests fixed
- mocks generated
2024-07-03 14:31:43 +02:00
Francisco Gindre bcffcead1e
add tree state for height 663187 2024-06-26 17:23:09 -03:00
Francisco Gindre b13b5bc179
Add TreeState fo 663150 2024-06-26 17:03:17 -03:00
Francisco Gindre eb6daba93c
[#1341] Add Support for GetSubTreeRoots in Advanced Re Org tests
closes #1341

Updates Proto files and compile new swift versions

Adds setSubTree darkside service
adds subtrees into buildFakeChain() methods
2024-06-26 16:57:05 -03:00
Francisco Gindre aaf12c057b
[#1455] Darkside Tests: Test fail with "call AddTreeState() first"
this adds the addTreeState() function to the DarksideWalletService
class and corresponding calls in FakeChainBuilder
Closes #1455
2024-06-26 10:34:05 -03:00
Lukas Korba d258fc094b [#1431] Fix swiftlint reported issues
- all reported swiftlint issues have been addressed

[#1431] Fix swiftlint reported issues

- changelog updated

[#1431] Fix swiftlint reported issues (#1432)

- fixme fix
2024-05-30 13:16:46 +02:00
Lukas Korba 9de9ea5e78 [#1429] Get memos for rawID
- New API for getting the memos by transaction's rawID

[#1429] Get memos for rawID

- Mock regenerated to have unique names

[#1429] Get memos for rawID

- Offlinetest fixed
2024-05-28 18:42:53 +02:00