Chris Stewart
5c9092889b
Add abillity to clear callbacks ( #4512 )
...
Fix missing clearCallbacks()
Add some tests
Remove uncessary code from test
2022-07-17 09:10:57 -05:00
Chris Stewart
948d2b424e
Make KeyManagerAppConfig.walletName return String rather than Option[String] ( #4507 )
2022-07-16 09:33:10 -05:00
Chris Stewart
1b169d8fa0
Implement torstarted
websocket callback ( #4476 )
...
* Implement tor started websocket callback
* Implement tor callbacks when tor is provided
2022-07-11 10:26:30 -05:00
Chris Stewart
1ae4d40dac
Implement rescancomplete
callback ( #4475 )
...
* Implement rescancomplete callback
* Add walletName to payload
* Add to documentation
2022-07-09 16:23:15 -05:00
Shreyansh
d8fc8e588f
Remove Spv code ( #4356 )
...
* change node tests to neutrino
* get node test working
* merge DataMessageHandlerTest and DataMessageHandlerNeutrinoNodeTest
* delete unused files
* remove commented out spv parts
* formatting
* delete spv node
* remove merkle callback for neutrino node
* remove spv node wallet callbacks
* formatting
* remove SpvWalletApi
* replace SpvTestConfig with NeutrinoTestConfig
* more replace SpvTestConfig with NeutrinoTestConfig
* minor fix
* fix tests
2022-05-30 07:57:31 -05:00
Chris Stewart
bf88d0d93f
Remove exception when we have zero relevant outputs ( #4352 )
2022-05-26 12:39:09 -05:00
rorp
f680ab8691
Persist whether wallet is rescanning in the database ( #4326 )
...
* Persist whether wallet is rescanning in the database
* fix cli
* fix build
* fix unit tests
* fix postgres tests
* remove wallet_state table
* fix rescan bug
* cleanup
* revert Cancellable's
* Cleanup
Co-authored-by: Chris Stewart <stewart.chris1234@gmail.com>
2022-05-23 19:03:02 -05:00
rorp
059f2f5fac
Fix ERROR: relation "txo_spending_info" does not exist
( #4323 )
...
* Fix `ERROR: relation "txo_spending_info" does not exist`
* Escape schema name
Co-authored-by: Chris Stewart <stewart.chris1234@gmail.com>
2022-05-17 12:02:29 -05:00
Chris Stewart
341c712563
Validate bitcoin-s.wallet.walletName config option ( #4336 )
2022-05-17 10:29:17 -05:00
Chris Stewart
fac0713405
Reduce rescan threadpool size to just be number of available processors ( #4306 )
2022-05-01 07:05:43 -05:00
rorp
0c6c9180ed
Handle duplicate UTXOs ( #4296 )
...
* Handle duplicate UTXOs
* Add logging
* Add log for exception in handleDuplicateSpendingInfoDb
Co-authored-by: Chris Stewart <stewart.chris1234@gmail.com>
2022-04-29 08:21:41 -05:00
Chris Stewart
486fa36d2c
Make _findOutputsBeingSpentQuery take at most 1,000 outpoints ( #4300 )
2022-04-29 07:20:23 -05:00
Chris Stewart
79b4f096ec
Improve logging around signDLC ( #4299 )
...
* Improve logging around signDLC
* Improve logging so we can see what specific transaction fails when processing a block
2022-04-28 17:09:27 -05:00
Chris Stewart
6db1f26625
2022 03 22 getrelevantoutputs upfront ( #4219 )
...
* WIP
Try and debug
WIP
Fix bug for incomingAmount
Clean up logs
more cleanups on logs
Remove another uncessary log
Don't process tx if we don't have a relevant received output for that specific tx
* Group hashes in batches of 1,000 before querying the db
2022-04-26 11:12:44 -05:00
rorp
3831b35817
Prevent the wallet from creating duplicate UTXOs ( #4290 )
...
* Prevent the wallet from creating duplicate UTXOs
* respond to the PR comments
* cleanup
2022-04-25 11:56:37 -05:00
Chris Stewart
27cb4a3c20
Add height to log message when processing block ( #4251 )
2022-04-10 11:04:17 -05:00
Chris Stewart
7c1c572081
Rescan failure logging ( #4250 )
...
* Rescan failure
* Set rescanning to false inFailure case
2022-04-10 10:39:11 -05:00
Chris Stewart
24125eaca3
Fix case where we broadcast tx with a tag, and then also add the tag when we receive the tx in a block ( #4239 )
2022-04-03 13:40:19 -05:00
Chris Stewart
8081772b57
Allow acceptor to upsert same outpoint multiple times for different offers ( #4230 )
...
* Allow acceptor to upsert same outpoint multiple times for different offers
* Remove extra log
* Revert DLCOffer invariant
* Fix OP_RETURN tests
2022-03-31 07:47:10 -05:00
Chris Stewart
33171fd069
Use the set of addresses in the wallet when rescanning rather than generating more ( #4211 )
2022-03-26 06:22:09 -05:00
Chris Stewart
413dbcacbb
Rename clearUtxosAndAddreses(account) -> clearUtxos(account) ( #4206 )
2022-03-22 13:08:03 -05:00
Chris Stewart
5475a994cf
Bump default address gap limit to 100, add log indicating we didn't find funds in the last addressBatchSize addresses ( #4201 )
2022-03-19 19:02:32 -05:00
Chris Stewart
d5807daeab
Remove SpendingInfoDb.txid parameter ( #4199 )
2022-03-19 15:21:36 -05:00
Chris Stewart
a3dba47970
Refactor pending receives/spent states into one spot ( #4026 )
2022-03-19 13:25:26 -05:00
Chris Stewart
46229d712c
Rename clearAllUtxosAndAddresses()
-> clearAllUtxos()
( #4193 )
...
* Rename clearAllUtxosAndAddresses() -> clearAllUtxos()
* Fix unit test
* Fix docs
2022-03-16 08:53:08 -05:00
Chris Stewart
ef41cce32d
Log entire address path when the address is generated ( #4191 )
2022-03-15 08:04:40 -05:00
Chris Stewart
8214c0b931
Add the account to the address generation log ( #4190 )
2022-03-14 19:33:40 -05:00
Chris Stewart
c882372c45
Improve process compact filter logs ( #4189 )
2022-03-14 18:09:36 -05:00
Chris Stewart
668ab21ca1
2022 03 09 label refactor ( #4175 )
...
* Rename existing getaddresslabels -> getaddresslabel
* Fix missing rename of GetAddressLabel
* Modify pk constraint on wallet_address_tags to be tag_name rather than tag_type
* Add dropaddresslabel for a specific address
* Fix migrations
* Add unit tests and fix existing tests
* Add docs
2022-03-09 15:36:44 -06:00
Chris Stewart
1072078d7c
Improve tx processing log to show when we have a relevant input/output to the wallet ( #4172 )
2022-03-08 11:05:32 -06:00
Chris Stewart
d63e845de4
Only update wallet's sync height if we don't have a match in processCompactFilter() ( #4169 )
2022-03-07 10:36:41 -06:00
Chris Stewart
c3300aec52
2022 03 03 hdpath fromstring factory exn ( #4159 )
...
* Add explicit excpetion when we are unaware of the purpose in a hd path
* Remove test
* Cleanup
2022-03-04 06:05:49 -06:00
Chris Stewart
f1bd0ea3a5
Add log message for the case where we match a script but do not have a matching address in our database ( #4156 )
2022-03-03 11:15:35 -06:00
Chris Stewart
1bab51c1c6
Adjust appconfig logging to INFO ( #4139 )
...
* Adjust appconfig logging to INFO
* Add txids to log
2022-02-28 14:58:31 -06:00
Chris Stewart
7a5c2971dd
Refactor receive flow to use the same utxo state transitions ( #4134 )
...
* Refactor receive flow to use the same utxo state transitions as the rest of the wallet
Get tests passing again with refactored utxos
Remove unecessary wallet methods
Fix test cases
* Remove fixture on UTXOHandlingTest
* Fix bug where funding happens in parallel in fixture and can lead to blockchain reorgs
2022-02-26 19:08:50 -06:00
Chris Stewart
c069b01e53
2022 02 24 rm prune addresses after rescan ( #4130 )
...
* Fix bug where we prune unused addreses on rescan. This doesn't let us discover funds for addresses sent that were not paid to until after the rescan was completed
* Add test case
* Fix neutrino node test case
* Some cleanup
2022-02-26 07:43:23 -06:00
Chris Stewart
3ba95700b2
Add RescanState, make sure we don't start concurrent rescans ( #4131 )
2022-02-25 05:23:51 -06:00
Chris Stewart
940c66807e
Add log for when a new address is generated ( #4127 )
...
* Add log for when a new address is generated
* Add isChange to the log
2022-02-23 15:10:30 -06:00
Chris Stewart
b46574c0c4
2022 02 18 sync since creationtime pt2 ( #4109 )
...
* Get things compiling and tests passing
* Fix bug where we weren't using filter height correctly
* Fix docs
* Move creationTime into KeyManagerAppConfig
* Fix nodeTest/test test fixtures
2022-02-22 08:00:14 -06:00
Chris Stewart
e6bf7bd67e
Segregate updating received utxos and spent utxos ( #4093 )
...
* Fix UTXOHandlingTest cases
* Reduce log level
* Add comments, fix bugs so that we can transition from TxoState.ConfirmedReceived -> TxoState.PendingConfirmationsReceived
* Fix BroadcastSpent/BroadcastReceive bugs
* Add scaladoc to updateUtxoStates()
* Break receive and spent tests into two test cases
* Remove unneeded database write
* Fix rebase
2022-02-20 15:37:52 -06:00
Chris Stewart
528e7c8f0e
Remove TxoState.DoesNotExist ( #4108 )
2022-02-18 16:31:03 -06:00
rorp
5777ec1c31
Add an ability to set custom payout and change addresses ( #4101 )
...
* Add an ability to set custom payout and change addresses
* config changes
* formatting
* respond to the comments
2022-02-18 09:29:00 -06:00
Chris Stewart
dc47c070a2
Fix SpendingInfoDAO.findOutputsReceived() bug ( #4090 )
2022-02-14 10:11:23 -06:00
rorp
4d85b7a3d7
Support for big SPKs ( #4084 )
...
* Support for big SPKs
* Support for big SPKs
* Bump number of migrations
* Fix other test case
* cleanup
* cleanup
* fix psql migrations
Co-authored-by: Chris Stewart <stewart.chris1234@gmail.com>
2022-02-14 07:22:34 -06:00
Chris Stewart
eeabe5cd77
2022 02 11 clearutxoandaddresses for account transactional ( #4077 )
...
* Make clearUtxosAndAddresses(account) transactional
* Add deleting address tags
2022-02-11 12:03:59 -06:00
Chris Stewart
35dccd88d6
Add new section to README for running bitcoin-s, add link to the web frontend ( #4069 )
2022-02-10 06:16:41 -06:00
rorp
48189d5c1d
Make CRUD.run
and CRUD.runVec
transactional ( #4059 )
...
* Make `CRUD.run` and `CRUD.runVec` transactional
* remove explicit `transactionally` calls
2022-02-07 17:42:48 -06:00
benthecarman
142612f034
Make newConfigOfType use Vector[Config] ( #4039 )
2022-02-04 06:14:16 -06:00
Chris Stewart
883b01006d
Fetch blockHeight earlier in TransactionProcessing.processBlock() ( #4025 )
2022-01-30 16:41:29 -06:00
Chris Stewart
8d04ca1cd3
2022 01 30 optimize processblock ( #4024 )
...
* Reduce allocations in parameters to processTransactionImpl parameters for Some
* Move cachedReceivedOptF map out of the hot path on processBlockCachedUtxos
* Move spentSpendingInfoDbs out of the hot path on processBlockCachedUtxos
* Cache all inputs in block earlier to avoid looping over them over and over
* Call correctly processTransactionImpl on accumulated wallet
* Fix compile
2022-01-30 15:53:55 -06:00