Commit Graph

1197 Commits

Author SHA1 Message Date
Lukas Korba 8fa86ff37f
Merge pull request #1408 from LukasKorba/1406--Release-2-1-3
[#1406] Release 2.1.3
2024-03-28 16:13:43 +01:00
Lukas Korba f41ac27eb8 [#1406] Release 2.1.3
- changelog updated
2024-03-28 16:10:50 +01:00
Lukas Korba 4a16957795
Merge pull request #1407 from Electric-Coin-Company/orchard-subtree-roots
Fetch and store Orchard subtree roots
2024-03-28 16:09:08 +01:00
Lukas Korba bdfe0b6823 orchard-subtree-roots
- test testUpdateSubtreeRootsAction_RootsAvailablePutRootsSuccess fixed
2024-03-28 16:03:00 +01:00
Jack Grigg 006861595d Fetch and store Orchard subtree roots 2024-03-28 10:52:17 -04:00
Lukas Korba d8f389b8da
Merge pull request #1405 from LukasKorba/1404-Release-2-1-2
[#1404] Release 2.1.2
2024-03-27 23:22:31 +01:00
Lukas Korba eb2ebeaf97 [#1404] Release 2.1.2
- fix for a bug in note selection when sending to a transparent recipient
2024-03-27 23:18:57 +01:00
Lukas Korba 279de9a2a4
Merge pull request #1403 from LukasKorba/1402-Release-2-1-1
[#1402] Release 2.1.1
2024-03-27 16:48:46 +01:00
Lukas Korba e3cb722db8 [#1402] Release 2.1.1
- FFI bump

[#1402] Release 2.1.1

- changelog updated
2024-03-27 16:47:24 +01:00
Lukas Korba 8909f23722
Merge pull request #1400 from LukasKorba/1398-Release-2-1-0
[#1398] Release 2.1.0
2024-03-26 18:15:30 +01:00
Lukas Korba c5e07943d3 [#1398] Release 2.1.0
- changelog updated for the release
2024-03-26 18:03:01 +01:00
Lukas Korba b183b10d13
Merge pull request #1393 from Electric-Coin-Company/feature-2.1.0
Feature branch for SDK 2.1.0
2024-03-26 18:00:38 +01:00
Lukas Korba c3e6201bcd
Merge pull request #1397 from Electric-Coin-Company/orchard-fixes
Orchard implementation fixes
2024-03-26 17:54:02 +01:00
Lukas Korba 4a1edd7e44
Merge pull request #1399 from LukasKorba/checkpoints-update
checkpoints-update
2024-03-26 17:53:33 +01:00
Lukas Korba 41cf1357bd checkpoints-update
- checkpoints added
2024-03-26 17:51:24 +01:00
Jack Grigg fa4def9f29 Add missing `ZcashTransaction.Output.Pool.orchard` case 2024-03-26 08:24:00 -04:00
Jack Grigg 43534d26d9 Integrate Orchard support and latest Rust updates 2024-03-25 23:19:44 -04:00
str4d 730aee0c5f
Merge pull request #1395 from LukasKorba/public-isSeedRelevantToWallet
Public API isSeedRelevantToWallet
2024-03-18 14:35:19 +00:00
Lukas Korba e1c600b8ff Public API isSeedRelevantToWallet
- New public API `isSeedRelevantToWallet` has been implemented
- 2 swiftlint error have been resolved
- Mocks generated
2024-03-18 14:45:30 +01:00
Jack Grigg a5a0ef0ac1 Migrate to latest in-progress revision of Rust crates
- New backend method `ZcashRustBackend.isSeedRelevantToWallet`
- `ZcashRustBackend.scanBlocks` now takes a `fromState` argument.

Co-authored-by: Lukas Korba <lukas.korba@seznam.cz>
2024-03-15 16:01:39 +00:00
Jack Grigg 86defc8b4a Remove `AccountRepository`
This removes the last direct access to the `accounts` table; all access
now goes through the Rust FFI.
2024-03-15 15:26:44 +00:00
Jack Grigg dd9942b6ab Remove `UnspentTransactionOutputRepository`
This removes the last direct access to the `utxos` table; all access
now goes through the Rust FFI.

`SDKSynchronizer.latestUTXOs` is removed without replacement. It was
introduced during the initial addition of shielding support, but:

- It is no longer used anywhere inside the SDK (when added, it was
  used in a few other methods).
- It is not exposed in the `Synchronizer` protocol.
- It is AFAICT unused in Zashi iOS, Edge, and Unstoppable.
- It was functionally replaced by `refreshUTXOs`, which performs
  best-effort UTXO updates instead of failing on any error. (It also
  does not clear the `utxo`s table which makes it not equivalent.)
2024-03-15 14:37:17 +00:00
Lukas Korba 6207cc999b
Merge pull request #1390 from pacu/feature/uri-initiated-payments
[#1379] Fulfill Payment from a valid ZIP-321 request
2024-03-15 12:58:54 +01:00
Francisco Gindre c873e208c4
[#1379] Fulfill Payment from a valid ZIP-321 request
Closes #1379

Adds test for parsing error
Adds test for successful tx creation
Public API changes in CHANGELOG.md
2024-03-08 18:38:50 -03:00
Lukas Korba 6c9b7a91d6
Merge pull request #1389 from LukasKorba/1388-Release-2-0-11
[#1388] Release 2.0.11
2024-03-08 17:09:50 +01:00
Lukas Korba 9ce891e928 [#1388] Release 2.0.11
- Changelog updated
- Checkpoints added for both mainnet and testnet

[#1388] Release 2.0.11 (#1389)

- Unreleased added to the changelog
2024-03-08 17:09:06 +01:00
str4d 7fcf1fad02
Merge pull request #1382 from Electric-Coin-Company/1204-expose-proposals
Expose APIs for working with transaction proposals
2024-03-08 14:50:06 +00:00
Jack Grigg 129ac4398e Add missing changes to protocols for `Synchronizer` wrappers 2024-03-08 00:41:58 +00:00
Jack Grigg 23fd0698d4 Migrate to FFI 0.6.0 release 2024-03-08 00:26:02 +00:00
Jack Grigg 9b2be559cd Add `Proposal.transactionCount` 2024-03-07 18:50:31 +00:00
Jack Grigg e9177a28f7 Migrate to in-progress version of FFI backend 0.6.0
Includes:
- Multi-step transaction proposals.
- Changes to support `Synchronizer.proposeShielding` API changes.
2024-03-06 03:06:57 +00:00
Lukas Korba f617f17e2a Add testOnlyFakeProposal for testing purposes outside SDK 2024-03-06 02:54:19 +00:00
Lukas Korba bb1a05ef5c Enable ZIP 317 fees
Closes Electric-Coin-Company/zcash-swift-wallet-sdk#1186.
2024-03-06 02:53:34 +00:00
Jack Grigg 84ac6252fe Adjust `Synchronizer.proposeShielding` API
- Returns `null` when there are no funds to shield or the shielding
  threshold is not met.
- Throws an exception if there are funds to shield in more than one
  transparent receiver within the account.
- Has an optional parameter for specifying which transparent receiver
  to shield funds from.

This commit only alters the API to support the above; the functional
changes require modifying the FFI and Rust backend, which will happen
in a separate commit.
2024-03-06 02:53:34 +00:00
Jack Grigg 136a3116b9 Documentation fixes 2024-03-06 02:53:34 +00:00
Jack Grigg dd41e655e4 Deprecate `Synchronizer.sendToAddress` and `Synchronizer.shieldFunds` 2024-03-06 02:53:34 +00:00
Jack Grigg 8145248285 Expose APIs for working with transaction proposals
Closes Electric-Coin-Company/zcash-swift-wallet-sdk#1204.
2024-03-06 02:53:33 +00:00
Lukas Korba 2ef0e00385
Merge pull request #1377 from LukasKorba/1376-Release-2-0-10
[#1376] Release 2.0.10
2024-02-12 20:08:43 +01:00
Lukas Korba 7007560cf2
Update CHANGELOG.md
Co-authored-by: Kris Nuttycombe <kris@nutty.land>
2024-02-12 20:07:19 +01:00
Lukas Korba 432beb96d5
Update CHANGELOG.md
Co-authored-by: Kris Nuttycombe <kris@nutty.land>
2024-02-12 20:07:12 +01:00
Lukas Korba 9f339d5252 [#1376] Release 2.0.10
- Checkpoints added
- Changelog updated
2024-02-12 19:48:34 +01:00
Lukas Korba c7c2438b73
Merge pull request #1375 from LukasKorba/1374-ZashiError-generated-code-update-is-missing
[#1374] ZashiError generated code update is missing
2024-02-12 18:08:28 +01:00
Lukas Korba 913f677282 [#1374] ZashiError generated code update is missing
- ZcashError generated code updated
2024-02-12 17:55:14 +01:00
Lukas Korba 1faf31a8c9
Merge pull request #1372 from LukasKorba/1369-SynchronizerState-with-PoolBalance
[#1369] SynchronizerState refactor
2024-02-12 17:41:45 +01:00
Lukas Korba e51f425c54 [#1369] SynchronizerState refactor
- plural of account balances refactor to singular

[#1369] SynchronizerState refactor

- transaprent balance removed from SynchronizerState
- all balances are now handled with AccountBalance

[#1369] SynchronizerState refactor and balances cleanup

- WalletBalance has been removed from the SDK, replaced with AccountBalance
- public APIs for individual balances (getTransparent, getShielded, getShieldedVerfied) have been removed from the SDK, replaced with getAccountBalance
- tests refactored

[#1369] SynchronizerState refactor and balances cleanup

- dark side tests refactored

[#1369] SynchronizerState refactor and balances cleanup (#1372)

- addressed comments

[#1369] SynchronizerState refactor

- ZcashError for spending key does not belong to the wallet
2024-02-12 17:41:26 +01:00
Lukas Korba 25e844115d
Merge pull request #1371 from LukasKorba/1368-Handle-any-lightwalletd-error-with-retry-logic
[#1368] Handle any lightwalletd error with retry logic
2024-02-12 17:40:41 +01:00
Lukas Korba 99d4821769 [#1368] Handle any lightwalletd error with retry logic
- The retry logic was implemented for blockStream errors only but this PR generalize it for any lightwalletd error
2024-02-12 17:40:28 +01:00
Lukas Korba 09fe70dff2
Merge pull request #1373 from LukasKorba/1153-Allow-runtime-switch-of-lightwalletd-servers
[#1153] Allow runtime switch of lightwalletd servers
2024-02-12 17:37:55 +01:00
Lukas Korba c7369057f1 [#1153] Allow runtime switch of lightwalletd servers
- new public API switchTo(endpoint:) implemented

[#1153] Allow runtime switch of lightwalletd servers

- API documented
- code cleaned up

[#1153] Allow runtime switch of lightwalletd servers

- mocks generated

[#1153] Allow runtime switch of lightwalletd servers (#1373)

- sever validation added

[#1153] Allow runtime switch of lightwalletd servers (#1373)

- enhanced validation of the server

[#1153] Allow runtime switch of lightwalletd servers (#1373)

- new ZcashError.synchronizerServerSwitch that represents the state when the endpoint fails validation

[#1153] Allow runtime switch of lightwalletd servers (#1373)

- ZcashError definition update

[#1153] Allow runtime switch of lightwalletd servers (#1373)

- addressed comments

[#1153] Allow runtime switch of lightwalletd servers (#1373)

- changelog revert according to proposal
2024-02-12 17:13:08 +01:00
Lukas Korba 10dc5ed861
Merge pull request #1333 from pacu/swiftlint
[#1332] Enable Swiftlint workflow
2024-02-05 12:33:31 +01:00