* wallet: Refactor AddressHandling to be account specific
* fix compile
* Add test
* Fix AddressType.fromPurpose() for HDPurpose.Multisig
* Fix nodeTest/test
* Don't use HDPurpose.Multisig in test
* Return None for HDPurpose.Multisig inside of AddressType.fromPurpose()
* wallet: Get UTXOHandlingApi.listUtxos() to be account specific
* wallet: Add UTXOHandlingApi.{getBalance(), getUnconfirmedBalance(), getConfirmedBalance(), getBalance(account), getUnconfirmedBalance(account), getConfirmedBalance(account)}
* wallet: Remove listDefaultAccountUtxos(), use listUtxos() instead
* core: Fix bug where we weren't checking for valid hash types in TaprootKeyPath.isValid()
* Fix TaprootWitness generator to use valid taproot hash types
* Add test case and add invariant to RawTxSigner.sign()
* Add InputInfo.sortPreviousOutputMap()
* Fix bug where we were sorting prevoutputmap when it didn't need to be sorted
* WIP: Remove isDummySignature
* Add ECDigitalSignature.LOW_R_SIZE, use it in ECDigitalSignature.dummyLowR
* Regenerated dlc_test.json and dlc_tx_test.json to add hash type to dummy ecdsa signatures in static test vectors
* Regenerated dlc_test.json and dlc_tx_test.json to add hash type to dummy ecdsa signatures in static test vectors
* Fix InputInfoTest maxWitnessLengths checks to be >=
* Fix docs
* Add DigitalSignature, extend it with ECDigitaSignature,SchnorrDigitalSignature
* WIP: Remove EmptyDigitalSignature case object in favor of val
* Fix byte representation of ECDigitalSignature.emptyDigitalSignature
* Simplify names to ECDigitalSignature.{empty, dummy, dummyLowR}
* Fix docs
Add checks if recursiveRescanP is completed before attempting to fail the Future
Fix potential deadlock in RescanStarted.stop(), add RescanState test
Add unit test to make sure we propagate exceptions correctly
Move RescanStateTest to jvm only
Link completeRescanEarlyP and blocksMatchedF together in RescanStateTest
Revert DLCWalletLoaderApi.scala
* Refactor TransactionProcessing.processTransaction() to use BlockHashWithConfs
Create WalletUtil.getBlockHashWithConfs(), use it in various places through the codebase
* Fix docs
* Update to bitcoind v28
* Add macOS arm64 hash
* Add 28.0 version for windows
* Fix windows hash
* Replace 'port' with 'bind' in bitcoin.conf
* Fix BitcoindConfig.bind, add -deprecatedrpc=warnings
* Add version specific warnings handling for V28
* Add pattern matching based on version to support new json format for warnings fields in Info RPCs
* Fix pattern match on V28
* Remove infinite loop w/ 'getnetworkinfo' when determing the version of a BitcoindRpcClient
* Pin lndRpcTest to bitcoind v27 until v28 is supported
* Add mempoolconflicts to 'gettransaction' RPC
* init 'gethdkeys' rpc
* WIP: createwalletdescriptor
* Get createwalletdescriptor test passing
* Revert files
* refactor: Rework codebase so that DLCWallet has-a instance of Wallet rather than is-a via inheritance
* Fix cast
* Fix RescanHandling in DLCWallet
* Remove default implementation of WalletApi.broadcastTransaction()
* fix broadcast callback for DLCWallet
* Add DLCWalletDAOs.fromDLCAppConfig()
* Fix scaladoc for AddressHandlingApi.getUnusedAddress
* Refactor codebase to have has-a relationship with RescanHandling rather than is-a
get everything compiling
Get all tests passing
* Revert and clean up files
* Fix docs
Refactor TransactionProcessing into case class
Get walletTest/test passing
DLCWallet WIP
Get dlcWalletTest/test passing
Small cleanups
Fix RoutesSpec gettransaction unit test
revert logback-test.xml
cleanup
* Make WebsocketTests rescan test more robust
* Bump timeout on WebsocketTests address generated unit test
* Rework importseed endpoint to return a bool indicating if the import was successful
* Reduce Server.httpBadRequest() log level from ERROR -> INFO
* Remove adhoc json for walletinfo
* Implement creatnewaccount rpc
* Get WalletRoutesSpec createnewaccount unit test passing
* Rename HDPurposes -> HDPurpose
* Fix docs
* Implement ConsoleCli arg, change HDPurpose json serialization to be a json string instead of a num
* Add NodeApiCallbacks
* Add BitcoindCallbacks
* Add BitcoindRpcAppConfig
* fix docs
* Add helper method for construction
* Add helper constructor method to avoid explicitly passing BitcoindRpcAppConfig parameter to BitcoindRpcClient when we have a BitcoindInstanceLocal
* Fix docs
* Pull over scala3 compatible code for crypto/ project from https://github.com/bitcoin-s/bitcoin-s/pull/3497
* Pull over scala3 compatible code for core/ project from https://github.com/bitcoin-s/bitcoin-s/pull/3497
* Add -Xsource:3 to core/
* Get coreJVM/compile working
* restore files lost from master when checking out core/ from 2021-06-30
* Get entire codebase compiling
* Get bitcoindRpcTest/test:compile working
* Restore P2SHDescriptor constructor
* scalafmt
* Fix UInt8.toByte
* Get all merkle block tests working
* Fix GCS bug
* Add -Xsource:3 to cryptoTest/
* Upgrade clightning to 24.02.2
* Fix download hash
* Fix version
* Change CLightningInfo.fees_collected_msat from String -> Long
* Fix channels parsing, add support for p2tr address type and remove nested-segwit for clightning
* Revert version
* amount_msats -> amount_msat
* Fix more json parsing
* Try commenting out asserts for midChannelsA being completed in CLightningChannelOpenerTest
* scalafmt
* msatoshi -> amount_msat
* Change assertion to check assert the channel is not active in CLightningChannelOpenerTest
* Fix CLightningPayResult
* Ignore test case that uses sendtoaddress until we upgrade to psbt v2
* Fix open, audit commands for v0.10.0
* Get all unit tests passing
* Add logger.error() to try to debug channel state
* Try adding delay to see if dual funding process can complete before we generate blocks
* scalafmt
* Try bumping number of blocks generated
* Try disabling dual funding
* Cleanup
* Get build started for 26.1
* Start introducing v26 data structures
* Switch BitcoindVersion.newest = V26
* Fix GetTxOutSetInfoResult to use hash_serialized_3
* Fix WalletRpcTest
* Refactor PeerInfoResponse to add transport_protocol_type and session_id fields in v25
* Add ServiceIdentifier.NODE_P2P_V2, add support for v2transport to addnode, add default config setting for bitcoind to have v2transport=1 in test framework, add unit test to make sure we can establish a v2 connection
* Remove V20AssortedRpc
* Add loadtxoutset
* Implement getchainstates
* Add getprioritisedtransactions
* Add getaddrmaninfo
* Add importmempool
* Cleanup println
* Implement downloading of bitcoind 25.2
* Add aarch64 hash
* Update x86 macos hash, windows hash
* WIP: scanblocks RPC
* Get in progress scanblocks state working
* Get scanblocks start request working
* Fix BitcoindRpcTestUtil.signRawTransaction
* Implement scanblocks abort
* Remove println
* Switch newest version of bitcoind to v25
* Fix BitcoindV25RpcClient.version
* move decodescript test to WalletRpcTest, rework decodescript test to use descriptors, fix LoadWalletResult
* Empty commit to run CI
* sendrawtransaction maxburnamount param
* Modify testmempoolaccept RPC return type to have two new fields for fee information
* Add test for base too
* Update scalafmt-core to 3.8.1
* Update .scalafmt.conf settings to be factory default settings
* Fix typo
* scalafmt
* Empty commit to re-run CI
* Revert some scalafmt back to original scalafmt.conf
---------
Co-authored-by: Chris Stewart <stewart.chris1234@gmail.com>