Commit Graph

24 Commits

Author SHA1 Message Date
Francisco Gindre 65aa7d8474 [wip] autoshield poc with uvks 2021-04-02 19:18:16 -03:00
Francisco Gindre 593f04b448 Migrate to new database model 2021-04-01 11:27:26 -03:00
Francisco Gindre 246d10edaa [WIP] catch up to latest librustzcash changes 2021-03-08 15:47:36 -03:00
Francisco Gindre 81f4edfd55 Issue #244 Add Synchronizer support for shielding funds 2021-03-03 18:19:10 -03:00
Francisco Gindre 4abf914f9f Issue #166 Download UTXO set 2021-03-03 18:09:13 -03:00
Francisco Gindre 6b48695744 [WIP]Get UTXOs 2021-03-03 18:09:13 -03:00
Francisco Gindre 9a8d4c23b5 Code Cleanup, test enhancements, linting changes 2021-02-15 21:56:23 -03:00
Francisco Gindre 879edb6236 Add ability to modify call timeout on LightWalletEndpoint 2020-11-18 16:12:15 -03:00
Francisco Gindre 49e3300692 Removed some warnings, added xconfig to fix pod lint issues, updated protobufs 2020-09-23 15:39:00 -03:00
Francisco Gindre 251b4c7aa3
Error handling refactor (#170)
* Improve error handling on processor and service

* Error Refactoring

* fix XCode12 issue

* Fix Compilation errors and test

* bump MIDDLE version
2020-08-10 19:19:59 -03:00
Francisco Gindre f8f8be30a4
Advanced Re Org tests + Balance tests (#137)
* Stub methods and internal initializers

* [WIP] Balance tests

* testVerifyBalanceAfterExpiredTransaction and testVerifyChangeTransaction

* adopt new version of darkside lightwalletd

* Balance tests with new darkside wallet proto files

* podspec and podfile

* Advanced reorg testsw

* Issue 117 - Reorg Test Case: Index of incoming tx changes

* Hooking to Darksidewalletd

* update proto files to latest

* sanity tests

* FakeChainBuilder + advanced tests

* Use new datasets

* test: outbound tx index change on reorg

* testReOrgChangesInboundTxMinedHeight test + other improvements

* testReOrgChangesInboundMinedHeight

* testReOrgRemovesIncomingTxForever

* testReOrgRemovesOutboundTxAndIsNeverMined

* testReOrgRemovesOutboundTxAndIsNeverMined

* Fixes to balance tests
2020-06-03 20:18:57 -03:00
Francisco Gindre 462ce0f5d7
Decrypt transactions. Full wallet restore (#110)
* Add enhancement [WIP]

* Added enhance and decrypt transaction step

* modify logging

* Enhancement tests scaffolding
2020-04-23 14:11:03 -03:00
Francisco Gindre 174ceb1d8e
Swift grpc to NIO (#109)
* update protofiles

* update protobuf

* swift lint

* update GRPC service to NIO

* initial update [wip]

* Upgrade to SwiftGRPC NIO and Tests
2020-04-09 19:25:43 -03:00
Francisco Gindre 60510edd63 ENHANCEMENT: Retry support + error management 2020-03-13 21:00:01 -03:00
Francisco Gindre 72c3cb59ef
Integrate logging capabilities (#93)
* Integrate logging capabilities

* Relocate file
2020-03-09 17:25:27 -03:00
Francisco Gindre b867649443
Support Note Spending v7
* upgraded to note-spending-v7

* use "zip32 compliant" seed on demo app

* Fixes to initializer, added v7 methods, documented API. Fixed compact block processor not initializing correctly upon new wallets.

* documentation

* Change u8 return value to bool + tests

* add address validation functionality to Initializer

* renamed functions to a C style. Exposed deriving functions in rust backend. Added more tests

* fixed bug where compact block processor wouldn't reschedule

* Fixed capture blocks retaining references

* fixed memory cycles and leaks

* fixed memory leak and blockrange error

* fixed error on confirmed transactions and added blockheight to progress notifications
2020-02-26 13:54:48 -03:00
Francisco Gindre 750108252f
Feature/single pod mainnet (#60)
* Mainnet changes [WIP]

* Separate pods approach [WIP]

* Create a single podfile and scripts to build mainnet or testnet [WIP]

* Added test spec to pod with TESTNET Script [WIP]

* pod install + sample app testnet build worked

* add prefix to database names

* Fix constants in tests

* fix plist

* fix stencils

* Force environment variable

* Get config from environment variable

* Save project settings and create new DemoAppConfig settings

* Fix Template. change demoApp config port

* Add extra warning when building to see environment in logs

* New Readme! + enhanced messaging on build_librustzcash_xcode.sh

* Fix Stencil if statement

* add our domain names to the demo app endpoints

* clean up Podfile

* fix: mainnet not building properly

* improve cleanup

* fixed weird seed change

* remove duplicated file reference

* Improve error handling on LightWalletService

* Improve error handling on Latest block height. fix get address pasteboard gesture

* fix mainnet walletbirthday stencil

* fix: demo app not syncing on mainnet

* Verified Balances and Send Max Funds fixed

* Add paths to preserve when installing pod

* add Stencil to preserved paths

* Fix $ZCASH_SDK_GENERATED_SOURCES_FOLDER not writable error

* Fixes from PR Comments

* Fixed TransactionId string generation

* Fixed Test build scripts + PR comments

* fix indentation

* Changes to script_commons

* fixes per PR

* remove else from mismatch function

* Add comment to poorly named function
2020-01-14 19:25:14 -03:00
Francisco Gindre a139ffbdfe
Transaction Listing + send funds + synchronizer implementation (#47)
* Create UIKit subfolder

* add offset to transaction repository

* mock repository and tests [WIP]

* Paged transaction DAO

* Paged transaction repository by kind

* update protobuf files

* move SDKSynchronizer to UIKit folder

* created some health check test on transactions

* Build release version of librustzcash

* Add Send on main thread button for troubleshooting purposes

* fix submit method by using RawTransaction factory method

* fix transactions table mapping

* fix transactions table mapping

* fix get balance sample

* FIX: cosensus branch ID for Blossom

* SDKSynchronizer integration for Send Funds

* fix rawTransactionId mistaken by raw field

* fix testEncodeSpend

* Transaction submission failed tests

* unpaged transaction listings

* renamed method, fixed typo

* stupid xcode misplaced folders again

* add PaginatedTableView Dependency to Example and hook it up [WIP]

* fix  unit test target not being shared

* removed performance test

* fix get address, paged transactions nulled, added type of transaction

* added kind of transaction to transaction repo builder, fixed transaction builder

* Transaction Detail screen

* add transaction details to paginated transaction
2019-12-16 19:25:45 -03:00
Francisco Gindre 561ea7b620
Feature/sending ui (#39)
* [WIp} Send View Controller + Synchronizer methods to send and cancel tx +  builders

* Send Funds scaffold

* project changes

* initializer and synchronizer enhancements. removed dummy file

* fix bitcode issue, add Progress HUD

* Pending Transactions, send transactions

* create_to_address tests + sending UI
2019-12-06 09:38:47 -03:00
Francisco Gindre d8affaebd3
Transaction submission + tests (#34)
* transaction manager

* Transaction Manager Tests

* pending transactions DAO + Scaffold tests

* PendingTransactionsDao + tests

* Persistent Transaction Manager
2019-12-03 12:19:44 -03:00
Francisco Gindre 2c23875607
Synchronizer + Handle reorgs (#27)
* Compact Block Synchronizer first impl

* Synchronizer

* Basic Reorg logic. Moved tests to cocoapods

* Remote Carthage Support

* remove Carthage support from readme

* RustBackendMock

* RustBackend Stub for testing reorgs. Tests (fail). Download retry logic

* Simple reorgTest passed
2019-11-14 11:38:54 -03:00
Francisco Gindre b1887cc1b6
GetBlockHeight demo app (#9) 2019-10-31 19:43:09 -03:00
Francisco Gindre 3e2050d0f0
Swiftlint (#5)
* Swiftlint + tests

* Added Swiftlint to README.md
2019-10-18 17:09:13 -03:00
Francisco Gindre 60ea9d6737
Block downloading + storing (#4)
* Initial scaffold for Block Downloader

* (Failing) init Wallet test

* Ignore generated files

* Inject endpoint address on tests

* Simple Downloader + Tests

* CompactBlockDownloader latestBlockHeight, rewind + tests

* remover awful sync functions

* Compact Block processor scaffold

* Block Downloader + tests
[WIP] Block Processor

* Synchronous getBlockRange

* CompactBlock downloading sync + tests

* Sync CompactBlock Storage + Tests

* Rename Storage to FakeStorage

* WIP Blockdownloader test, block storage tests

* Fix carthage import for SQLite.framework

* SQLite Storage implementation for CompactBlocks + Tests

* Housekeeping, TestDbBuilder and other utils to their own place

* Integrated CompactBlockStorage to Downloader Tests

* Get latestBlockHeight from wallet

* move FakeStorage class to test utils

* Add ZcashLightClientKit import to moved file

* data db initialization + test

* ZcashOperation, CompactBlockDownloadOperation + tests. BlockDAO, latestScannedHeight

* Download and scan blocks. Download Operation. Scan Operation. Tests.

* cleanup test

* Updated readme
2019-10-18 15:45:19 -03:00