Commit Graph

4489 Commits

Author SHA1 Message Date
Scala Steward
afddf73c48
Update scalafmt-core to 3.8.1 (#5501)
* 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>
2024-04-20 19:55:49 -05:00
Chris Stewart
9442dba217
Remove support for v21 of bitcoind (#5496)
* Remove support for v21 of bitcoind

* WIP: Remove deprecated rpcs wit legacy wallets

* WIP: Work up to importdescriptor

* Get low-r test case passing

* Simplify test case

* Remove BitcoindV21RpcClientTest and move test cases to BitcoindV24RpcClientTest

* Remove RpcTransactionRpcTest that only works on legacy wallet

* Fix MempoolRpcTest

* Delete MultisigRpcTest that depends on legacy wallet

* Get WalletRpcTest passing, ignore keypoolrefill test case for now until https://github.com/bitcoin/bitcoin/issues/29924 is resolved
2024-04-20 16:57:30 -05:00
Chris Stewart
c01793dc89
Implement importdescriptors RPC (#5534) 2024-04-19 17:11:26 -05:00
Scala Steward
2b497c634f
Update scalacheck to 1.18.0 (#5533) 2024-04-19 16:56:37 -05:00
Scala Steward
fd4c4d3f8a
Update bcprov-jdk18on to 1.78.1 (#5532) 2024-04-19 16:56:29 -05:00
Chris Stewart
e143792fb9
2024 04 16 bitcoindrpc descriptor (#5530)
* Integrate Descriptor class into 'getdescriptorinfo' RPC

* WIP: Invalid checksum that is valid according to bitcoin core

* Add descriptor.py in comments

* Get deriveaddresses RPC working with descriptors

* Parse descriptors in DescriptorsResult to Descriptor data type
2024-04-18 11:46:33 -05:00
Scala Steward
6f6a78ab52
Update scalacheck to 1.17.1 (#5527) 2024-04-18 09:45:13 -05:00
Scala Steward
b83e577d41
Update sqlite-jdbc to 3.45.3.0 (#5528) 2024-04-18 09:45:02 -05:00
Chris Stewart
a6d93622f8
2024 04 16 descriptor fidelity (#5529)
* Implement unit tests for key expression fidelity to user input for hardened paths

* Create HardenedType, rework BIP32Node to take Option[HardenedType] as a parameter

* Fix docs
2024-04-17 18:35:33 -05:00
Scala Steward
d39d89bfed
Update scala-collection-compat to 2.12.0 (#5526) 2024-04-17 17:45:42 -05:00
Chris Stewart
0fa3be37dd
2024 04 08 Descriptors (#5525)
* Add DescriptorType, OutputDescriptor

* Get unit test passing for a descriptor with a xpub and bip32 path

* WIP: Implement checksum algo

* WIP: Implement polyMod

* Get checksum unit test case passing

* Get basic serialization test case passing

* Revert Bech32.scala

* WIP: Implement KeyExpression

* WIP: KeyOriginExpression

* Get basic KeyExpression test case passing

* Get basic unit tests workign for parsing Private/Public key descriptor expressions

* Add examples

* Get all key expression unit tests passing

* Get negative test vectors passing

* WIP: Get P2WPKHDescriptor tests working

* Get all serizliation tests passing for non-derivation path BIP382 descrioptors

* Get BIP382 derivation test cases passing

* Implement BIP382 failure test cases

* Get BIP381 test vectors passing

* Split key expressions into SingleKeyExpression,MultisigKeyExpression

* WIP: Multisig descriptors

* Remove custom building of scripts now that we have #5502

* Get BIP383 test vectors passing

* Get BIP384 test vectors passing

* Fix bug in runFailTest()

* Add RawSPKScriptExpression, use it with P2WSHExpression to ensure underlying spk is a RawScriptPubKey

* Get all negative test vectors working after fixing bug in runFailTest()

* Implement BIP385 raw() test vectors, skip addr() descriptor

* Get everything working up to dealing with taproot pubkey types

* Begin working on type hierarchy for different pubkeys

* Get things to the point of needing a custom pubkey type

* Get things compiling w/ PubKeyTypeExpression

* Get tr(WIF) example working

* WIP: Key reworking type hierachy to be PublicKey type specific

* WIP: Taproot helpers

* Get taproot descriptor working with both keypath and single level scriptpath

* Get recursive tapscript tree test vector working

* Implement negative test vectors for BIP386

* Add BIP386 derivation test

* Get extkey tr() descriptor test working

* Rename InternalPublicKeyExpression -> RawPublicXOnlyPublicKeyExpression

* Fix keyOrigin for tr() descriptors

* Cleanup comments

* Add comments

* Move leafVersion TapscriptControlBlock -> TapLeaf
2024-04-15 19:09:46 -05:00
Scala Steward
c328ec860e
Update sbt-native-packager to 1.10.0 (#5522) 2024-04-15 08:49:51 -05:00
Scala Steward
c26bd8db9b
Update slick, slick-hikaricp to 3.5.1 (#5524) 2024-04-15 08:49:14 -05:00
Scala Steward
24a0bd43f8
Update logback-classic to 1.5.5 (#5521) 2024-04-15 06:28:41 -05:00
Scala Steward
81a72b20fe
Update slf4j-api to 2.0.13 (#5523) 2024-04-14 17:37:55 -05:00
Chris Stewart
2536fd3138
TapscriptTree, TapBranch, TapLeaf (#5520)
* Add taproot wallet test vectors

* Get parsing logic working

* Get first test case passing

* Add TapLeaf

* Get test cases working with two TapLeaf

* Add TapscriptTree as the top level type for a recursive data structure for TapscriptPath's

* Remove control block parsing for now until we actually test control blocks

* scalafmt
2024-04-12 11:16:14 -05:00
Chris Stewart
376872eb3e
Remove different versions of Blockchain.scala now that we don't support scalac 2.12 (#5519) 2024-04-12 09:53:30 -05:00
Chris Stewart
3d29bef135
Delete directory using Files.delete() (#5518) 2024-04-10 17:08:14 -05:00
Chris Stewart
b83661e73f
Repurpose PublicKey trait, extend it with {SchnorrPublicKey, ECPublicKeyApi, XOnlyPubKey} (#5517)
Re-add PublicKey trait, extend it with {ECPublicKeyApi, SchnorrPublicKey, XOnlyPublicKey}
2024-04-10 12:55:39 -05:00
Scala Steward
f20ea7423c
Update logback-classic to 1.5.4 (#5516) 2024-04-09 10:03:03 -05:00
Scala Steward
d3fca354a4
Update otj-pg-embedded to 1.0.3 (#5512) 2024-04-08 10:12:25 -05:00
Scala Steward
4377b082e3
Update scalamock to 6.0.0 (#5514) 2024-04-08 10:11:37 -05:00
Chris Stewart
302110cb56
Bump max connected peers default to 2 (#5515) 2024-04-08 09:14:28 -05:00
Scala Steward
4bb1724080
Update sbt-bloop to 1.5.17 (#5510) 2024-04-08 08:46:32 -05:00
Scala Steward
790708daa6
Update junixsocket-core to 2.9.1 (#5511) 2024-04-08 08:46:20 -05:00
Scala Steward
9b93a5a1ef
Update bcprov-jdk18on to 1.78 (#5513) 2024-04-08 08:46:09 -05:00
Chris Stewart
790327639a
Tighten P2WSHWitnessSPKV0.apply() to only take RawScriptPubKey (#5509) 2024-04-06 16:57:21 -05:00
Chris Stewart
4ae9067083
Add invariant to P2WPKHWitnessSPKV0.apply() to make sure ECPublicKey is compressed now that we have #5502 (#5508) 2024-04-06 13:15:35 -05:00
Chris Stewart
c2cbaae88f
Add invariant to make sure we can't have p2sh(p2sh()) (#5507) 2024-04-06 12:57:18 -05:00
Scala Steward
c747f1482a
Update play-json to 3.0.2 (#5359) 2024-04-05 15:45:18 -05:00
Chris Stewart
41c835761c
Make ECPublicKey return bytes that were passed as a parameter (#5502)
* Make ECPublicKey return bytes that were passed as a parameter rather than always returning compressed byte representation

Cleanup, add invariant

Use proper generator for isCompressed flag in BouncyCastleSecp256k1Test

* Try doing docs last to see if something fails in cryptoTestJVM/coreTestJVM

* Fix BouncyCastleUtil.computePubKey() where we weren't passing isCompressed
2024-04-05 09:21:53 -05:00
Chris Stewart
dc16ddfc2d
Migrate from setup-scala github action to setup-java github action in release.yml (#5504)
* Try migrating from setup-scala github action to setup-java github action in release.yml

* Remove custom branch
2024-04-05 07:46:21 -05:00
Chris Stewart
723e2f6a31
Bump java-version from 17 -> 21 on CI (#5503) 2024-04-04 17:09:45 -05:00
Chris Stewart
99c1292ddc
Add xor operator as NumberType.{^,xor()} (#5500)
* Add xor operator as NumberType.{^,xor()}

* Cleanup

* Consolidate number test suites

* Fix missing asserts
2024-03-28 15:21:59 -05:00
Scala Steward
dae7b0517b
Update sbt-bloop to 1.5.16 (#5499) 2024-03-28 14:19:56 -05:00
Chris Stewart
2b67999ad8
Bump docker base image to eclipse-temurin:21 (#5497) 2024-03-27 11:29:05 -05:00
Chris Stewart
2cb358fa4c
Run yarn upgrade to update website deps (#5495)
* Run yarn upgrade to update website deps

* update menu section
2024-03-26 14:35:27 -05:00
Chris Stewart
d162242a39
2024 03 24 v21 rpc refactor (#5494)
* WIP: Consolidate V19FilterRpc into BlockchainRpc

* Implement ChainApi.getFilterHeader() with bitcoind

* Make {BitcoindV22RpcClient,BitcoindV23RpcClient,BitcoindV24RpcClient} extend BitcoindRpcClient directly

* Fix MiningRpcTest

* Remove cast in BitcoindBackendTest
2024-03-26 13:04:26 -05:00
Chris Stewart
00b969b058
init 1.9.8 release notes (#5281)
* init 1.9.8 release notes

* Sort logs upto f8143f3e02

* Sort logs upto 177542a13c

* Sort logs upto 0bd59789e3

* Add commentary

* Add last commit
2024-03-25 09:10:25 -05:00
Chris Stewart
6b21a900ce
Bump versions to 1.9.8, add 1.9.8 version of website (#5280)
* Bump versions to 1.9.8, add 1.9.8 version of website

* Update website version
2024-03-25 09:06:31 -05:00
Chris Stewart
4501e138a4
Stop BitcoinSAppConfig last in BitcoinSServerMain.stop() (#5493) 2024-03-24 14:59:32 -05:00
Chris Stewart
0bd59789e3
Remove neutrino.suredbits.com:8333 from docker-compose.yml (#5492) 2024-03-24 11:03:39 -05:00
Chris Stewart
b25cc8a8a5
Fix start rescan race condition, previously we would attempt to fetch blocks before our NodeApi had any peers (#5491) 2024-03-24 07:10:56 -05:00
Chris Stewart
9fef2c505c
Add bitcoin-s.node.connection-attempt-cool-down-period (#5489)
* Add bitcoin-s.node.connection-attempt-cool-down-period

Add bitcoin-s.node.connection-attempt-cool-down-period

* Re-add shuffling
2024-03-22 13:16:45 -05:00
Chris Stewart
7e2a4c97e6
Reduce requesting next cfheaders log level to DEBUG (#5490) 2024-03-22 11:42:01 -05:00
Scala Steward
c51c6a8f39
Update sbt-buildinfo to 0.12.0 (#5486) 2024-03-20 14:56:14 -05:00
Scala Steward
a2b354c694
Update client3:core, ... to 3.9.5 (#5487) 2024-03-20 11:13:56 -05:00
Scala Steward
1e0cd1bed3
Update sbt-scalajs, scalajs-compiler, ... to 1.16.0 (#5488) 2024-03-20 11:09:49 -05:00
Chris Stewart
58adf4c6fd
Fix build warnings for --compress flag in jlink (#5485) 2024-03-20 11:09:41 -05:00
Chris Stewart
47c7680d8c
Refactor Node.chainApiFromDb() to return ChainApi (#5484)
* Refactor Node.chainApiFromDb() to return ChainApi

* Adjust log level for ignoring p2p messages to DEBUG
2024-03-20 08:56:50 -05:00