Commit graph

4656 commits

Author SHA1 Message Date
Scala Steward
b45b8b7eb0
Update sbt-bloop to 1.5.15 (#5386) 2024-02-06 15:56:34 -06:00
Scala Steward
843e9ee23a
Update sqlite-jdbc to 3.45.1.0 (#5384) 2024-02-02 13:23:20 -06:00
Chris Stewart
1685c84eea
2024 01 31 Refactor BitcoindRpcTestUtil.{startSevers(),stopSevers()} to use Future.traverse() (#5382)
* Refactor BitcoindRpcTestUtil.startServers() to use Future.traverse()

* Refactor BitcoindRpcTestUtil.stopServers() to use Future.traverse()
2024-01-31 15:20:36 -06:00
Chris Stewart
451e019225
2024 01 31 Fix PeerManager.connect() bug where PeerFinder was unaware of peer (#5381)
* Fix bug in PeerManager.connect() where we would throw ane xception when our PeerFinder had not seen the peer before

* Remove ReConnectionTest case where we constantly try to reconenct o a peer we disconnected, revert logback-test.xml
2024-01-31 11:10:48 -06:00
Chris Stewart
af74450c62
Cancel polling job after walletTest is executed (#5379) 2024-01-31 10:24:44 -06:00
Chris Stewart
75881191d1
Guard NeutrinoNode.start() with isStarted flag (#5380) 2024-01-31 09:48:44 -06:00
Chris Stewart
018631dad4
Create NodeTestUtil.awaitConnectionCount() (#5378)
Refactor ReConnectionTest to use NodeTestUtil.awaitConnectionCount()

Refactor more of codebase to use NodeTestUtil.awaitConnectionCount()

Refactor PeerManagerTest to use NodeTestUtil.awaitConnectionCount()

Refactor more nodeTest to use NodeTestUtil.awaitConnectionCount()

use bitcoinds.size for expectedConnectionCount
2024-01-31 07:39:20 -06:00
Chris Stewart
75f6a3b4ec
Refactor PeerFinder.peerConnectionScheduler() into method (#5377) 2024-01-30 14:35:17 -06:00
Chris Stewart
76e468c5c4
2024 01 28 Refactor PeerFinder.start() to avoid initializing connections (#5376)
* Conslidate PeerFinder.start() logic into peerConnectionScheduler, add bitcoins-s.node.try-peers-start-delay config settig to indicate how long until we start attempting to connect to peers in PeerFinder

* Cleanup

* Revert logback-test.xml

* Add documentation

* Empty commit to run CI

* Rework NodeAppConfig.peers to return Vector[Peer] rather than Vector[String]

* Add higher priority to paramPeers
2024-01-29 09:46:31 -06:00
benthecarman
f01987160d
Lnd v0.17.3 (#5375) 2024-01-27 11:28:25 -06:00
Chris Stewart
d641c3da55
2024 01 25 Cache txid (#5374)
* Add LargeTransactionTest

* Remove unused ByteArrayOutputStream

* Add block test case for 00000000ce4a4666cce2205d760d37b5579cdedf3ac9e4295557e8ac962cde55

* Cache txId to avoid re-computing txids which can take alot of resources

* Cache WitnessTransaction.toBaseTx, remove println

* remove BlockTest as it didn't capture the bug
2024-01-27 10:57:33 -06:00
Chris Stewart
5885f4e99e
2024 01 26 rm lazy bytes (#5373)
* Remove lazy evaluation of bytes in {Transaction, TransactionInput, TransactionOutput}

* use ByteVector.concat in BytesUtil.writeCmpctSizeUInt()

* mv cmpct.bytes into ByteVector.concat()

* Remove uncessary lazy byteSize
2024-01-26 10:38:53 -06:00
Scala Steward
5bd5cc51dc
Update metrics-core, metrics-healthchecks, ... to 4.2.25 (#5372) 2024-01-26 09:20:40 -06:00
Chris Stewart
be1ec842c2
Fix bug in classifying things as MultiSigSPK that do not have enough public keys in the Script (#5371)
* Add test case for 3a8dd04bc1f8179d0b85c8e1a1e89d058833ae64a9a8c3681da3ca329297beb1

* Fix bug where we were classifying things are MultSigScriptPubKey that did not have maxSigs' number of public keys in the Script

* Remove redundant comment
2024-01-24 15:32:08 -06:00
Chris Stewart
a66925dba0
Fix bug where IndexOutOfBoundsException was occuring when parsing a script with only OP_CMS (#5370) 2024-01-24 11:42:21 -06:00
Chris Stewart
fd09724f48
2024 01 23 Validate we have maxSigs number of public keys in MultiSignatureScriptPubKey (#5369)
* Add test case for tx for 109c38

* Check that we have maxSigs' public keys in OP_CMS.isValidAsm()

* Fix val names
2024-01-23 16:43:23 -06:00
Chris Stewart
039144c2c8
Add access to underlying MultiSignatureScriptPubKey scriptNumbers represents requiredSigs, maxSigs (#5366) 2024-01-23 14:40:06 -06:00
Chris Stewart
62012b1ee6
Upgrade microPickle to 3.1.4 (#5368) 2024-01-22 18:05:35 -06:00
Scala Steward
217914432e
Update scalapb-runtime to 0.11.15 (#5367) 2024-01-22 10:44:14 -06:00
Chris Stewart
0f95a1f7bb
Fix bounds checking for MultiSignatureScriptPubKey.maxSigsRequired (#5365) 2024-01-21 09:17:24 -06:00
Chris Stewart
83a27e2775
Add new macOS CI matrix to try and speed up mac jobs (#5364)
* Add new macOS CI matrix to try and speed up mac jobs

* Remove appServer heading in wallet,node,dlc CI run

* Remove tests from other matrix
2024-01-20 18:20:35 -06:00
Chris Stewart
73785706d8
2024 01 20 Fix bug in parsing OP_CLTV and OP_CSV (#5363)
* Get test case setup for tx 1c1f50e

* Fix bug in OP_CHECKLOCKTIMEVERIFY.isValidAsm(), check that the ScriptNumber is lessthan or equal to 5 bytes in size

* Fix bug in OP_CHECKSEQUENCEVERIFY.isValidAsm(), check that the ScriptNumber is lessthan or equal to 5 bytes in size

* Fix bug to check <= rather than <

* Revert Constants.scala, ScriptNumberUtil.scala, remove superflous 'return'
2024-01-20 17:44:08 -06:00
Chris Stewart
618e1ca2d2
Fix bug in script parsing logic where we weren't checking if a ScriptNumber was negative for a MultiSignatureScriptPubKey (#5362) 2024-01-20 15:07:38 -06:00
Scala Steward
f6648a1cc3
Update metrics-core, metrics-healthchecks, ... to 4.2.24 (#5360) 2024-01-20 10:45:25 -06:00
Scala Steward
3c6fd85f4d
Update sqlite-jdbc to 3.45.0.0 (#5361) 2024-01-20 09:25:00 -06:00
Scala Steward
e6ceda44f2
Update play-json to 2.10.4 (#5356) 2024-01-19 06:37:56 -06:00
Chris Stewart
db21b8873e
Set flag nativeImageInstalled =: true so we don't overwrite system's nativeimage (#5358) 2024-01-19 05:39:34 -06:00
Chris Stewart
a7b67fc78d
2024 01 18 fix native image build (#5357)
* Try specifying graalvm download url to fetch modern native image

try explicitly stating version #

Add tgz+

try using simple OS to get thigns working

Try runner.os

* Add comment for where to find new jdks in the future
2024-01-18 17:16:53 -06:00
Scala Steward
1ad2778ab2
Update client3:core, ... to 3.9.2 (#5355) 2024-01-16 09:35:54 -06:00
Scala Steward
510ac32db5
Update metrics-core, metrics-healthchecks, ... to 4.2.23 (#5320) 2024-01-15 08:10:01 -06:00
Scala Steward
495197d380
Update postgresql to 42.7.1 (#5321) 2024-01-15 08:09:51 -06:00
Scala Steward
001a2f0970
Update slf4j-api to 2.0.11 (#5351) 2024-01-15 08:09:40 -06:00
Scala Steward
589fc0c98b
Update sbt-scalajs, scalajs-compiler, ... to 1.15.0 (#5348) 2024-01-15 07:12:02 -06:00
Scala Steward
e8052e5a91
Update sbt-assembly to 2.1.5 (#5305) 2024-01-15 07:11:50 -06:00
Chris Stewart
f26e6f7c5a
initiate disconnect from PeerManager rather than bitcoind in connection (#5354)
* initiate disconnect from PeerManager rather than bitcoind in connection count test

* Empty commit to re-run CI
2024-01-14 16:24:05 -06:00
Chris Stewart
deb79c5994
Make another instance of Gen[ECPrivateKey] be deterministic (#5353)
* Make another instance of Gen[ECPrivateKey] be deterministic

* Revert CommonSettings.scala
2024-01-14 12:01:06 -06:00
Scala Steward
63b1f05b2e
Update sbt-bloop to 1.5.13 (#5319) 2024-01-14 09:06:05 -06:00
Scala Steward
329241b332
Update sbt-mdoc to 2.5.2 (#5350) 2024-01-14 09:05:49 -06:00
Scala Steward
37eaabab22
Update jna to 5.14.0 (#5347) 2024-01-14 09:05:23 -06:00
Scala Steward
7a3834dc80
Update sbt to 1.9.8 (#5349) 2024-01-14 09:04:50 -06:00
Scala Steward
ecbd024465
Update janino to 3.1.11 (#5313) 2024-01-14 09:04:39 -06:00
Chris Stewart
9cd60d5366
2024 01 02 encapsulate state p2psink (#5342)
* Move NodeState back to node module

* Refactor peerWithServicesDataMap into NodeState

* More usage of state.peerDataMap in stream

* Fix log message

* Fix compile

* Move PeerFinder into NodeState

* WIP: Move PeerFinder init into NeutrinoNode.start()

* Get things mostly working again after rebase

* Fix bug in handling of headers message where we wouldn't transition to DoneSyncing if a peer sent us 0 headers

* Move SendToPeer into stream

* scalafmt

* Empty commit to run CI

* Re-add DataMessageHandlerTest

* Renable disconnecting portion of NeutrinoNodeTest

* Empty commit to run CI

* Remove disconnection part of test again

* Empty commit to re-run CI

* Empty commit to re-run CI
2024-01-13 17:22:01 -06:00
Chris Stewart
56b1a557a8
Add carve out to ignore ConnectPeer request if state is NodeShuttingDown (#5352) 2024-01-13 14:40:12 -06:00
Chris Stewart
421970dcf5
2024 01 11 bip68 bip112 txversion bug (#5346)
* Fix bug where number needed to be interpreted as a UInt32 rather than Int32 by the ScriptInterpreter in the case of OP_CSV

* Add static test vector, fix another occurrence of bug
2024-01-12 06:44:18 -06:00
Chris Stewart
748121fe8a
2023 01 06 small chainhandler bug fixes (#5345)
* Get ChainApi.nextBlockHeaderBatchRange() tests passing

* Get all tests passing in chainTest/test

* Get all tests passing

* Add BlockHeaderDAO.getBlockchainFrom(header,startHeight), use it for filter marker computation

* Add carve out for IBD when syncing filter headers to avoid loading entire block header chain into memory

* Cleanup

* Fix inconsistencies between ChainApi.{nextBlockHeaderBatchRange, nextFilterHeaderBatchRange}
2024-01-07 12:16:36 -06:00
Chris Stewart
3a927edee1
Fix bug when requesting FilterSyncMarker for filter headers (#5344)
* Fix bug when requesting FilterSyncMarker for filter headers outside of our in memory blockchain's range

* Rework buildNHeaders to be faster, move it to ChainUnitTest
2024-01-06 09:59:26 -06:00
Chris Stewart
3c5bace825
Dont initiate disconnect logic from bitcoind, its flakey for some reason (#5343)
* Dont initiate disconnect logic from bitcoind, its falky for some reason

* Fix bug where we weren't switching sync to another peer on disconnect for the case where we were waiting for disconnection

* Empty commit to run CI

* Empty commit to run CI
2024-01-05 11:52:39 -06:00
Chris Stewart
d6c1491ba8
2024 01 03 shuttingdown nodestate (#5341)
* Add NodeShuttingDown

* Add NodeShutdown to NodeStreamMessage, use it in PeerManager.stop()

* Add guard to NeutrinoNode.stop() to see if stop() was called when the isStarted flag is set, if we aren't started don't attempt to destroy the akka stream
2024-01-04 14:05:31 -06:00
Chris Stewart
30876c2cde
Move PeerManager.connectPeer() logic into stream (#5340)
* Move PeerManager.connectPeer() logic into stream

* Fix comment
2024-01-03 10:27:35 -06:00
Chris Stewart
d27dcb38f4
Add logging to PeerConnection.handleStreamComplete so exceptions aren't dropping on the floor (#5339) 2024-01-02 13:14:21 -06:00