Commit Graph

2681 Commits

Author SHA1 Message Date
Scala Steward
89e84fff67 Update sbt to 1.5.0 (#2854) 2021-04-05 07:20:23 -05:00
benthecarman
4055de7690 Inital LND rpc with some tests (#2836)
* Inital LND rpc with some tests

* Fix ZMQ test

* Correct datadirs

* Most tests

* Fix eclair tests

* Make tests less flaky

* Have CI download lnd

* Respond to some review

* Fix ZMQ tests

* Cached bitcoind for lnd tests

* Fix fixtures, bump timeout

* InstanceFactory & ConfigFactory

* Fix compile issue for 2.12.12

* Move factories to core.api.commons
2021-04-05 04:52:56 -05:00
Scala Steward
969dee78f6 Update javafx-base, javafx-controls, ... to 17-ea+6 (#2852) 2021-04-04 08:46:39 -05:00
Chris Stewart
eb9b2de38b Enable scalajsbundler plugin on coreJS (#2853) 2021-04-03 11:36:15 -05:00
benthecarman
3dbeac276e Add ability to delete Oracle signatures (#2851)
* Add ability to delete Oracle signatures

* Respond to review
2021-04-02 13:55:47 -05:00
Chris Stewart
2554665e89 Enable publishing of scalajs artifacts (#2849) 2021-04-02 09:45:44 -05:00
Scala Steward
4d2532538b Update sourcecode to 0.2.5 (#2848) 2021-04-02 08:03:35 -05:00
Chris Stewart
60c1ad1919 Rework the website scaladoc aggregation and website (#2846)
* Rework the website scaladoc aggregation and website publishing to do what the mdoc documentation says

* Add jvm specific projects for asyncUtils & testkitCoreJVM
2021-04-01 11:44:02 -05:00
Chris Stewart
49b6d39ab4 Implement Oracle Explorer Client (#2838)
* WIP

* Get POSt working for creating an announcement

* Add ability POST oracle attestations

* Add docs

* Remove ExplorerMain

* Update workflows to add  oracleExplorerClient/test

* Switch to test so it passes on CI

* Add unit test, switch env to ExplorerEnv.Test

* Remove extra comments

* Add StringFactory to ExplorerEnv
2021-04-01 10:43:10 -05:00
Chris Stewart
a275668734 Update gitignore file with recommendations from unidoc (#2845) 2021-04-01 10:00:05 -05:00
Scala Steward
832d9308b5 Update scalatest to 3.2.7 (#2843) 2021-04-01 06:08:54 -05:00
benthecarman
fa80f36d2f Get all of Core working with JS (#2826)
* core-test-js-json

* Add SigPointComputer cross compile
Co-authored-by: Nadav Kohen <nadavk25@gmail.com>

* Fix java.time for scalajs

* InetAddress for scalajs

* Fix linking errors in coreTestJS

* Easy fixes

* InetAddress Tests

* Update micropickle, fix exact functions

* Get BigSizeUIntTest working with upickle

* Fix exact funcs

* Update Base58Test with upickle

* Update ScriptSignatureTest with upickle

* Update TransactionTest with upickle

* Update BlockFilterTest with upickle

* Update ScriptInterpreterTest with upickle

* Update MnemonicCodeTest with upickle

* Add InetAddress unit tests

* Fix compile errors

* Get core tests running, not passing

* Sign with js

* Fix PSBTUnitTest

* Fix PBKDF2 for JS

* Use bcrypto's secp256k1 instead of ecdsa

* Fix 2.12.12 compile

* Core tests passing :)

* Test corejs
2021-03-31 15:04:30 -05:00
Scala Steward
6e574931c6 Update sbt-scalajs, scalajs-compiler, ... to 1.5.1 (#2837) 2021-03-31 12:35:00 -05:00
Scala Steward
703f9585ef Update scala-collection-compat to 2.4.3 (#2834) 2021-03-31 07:10:49 -05:00
Scala Steward
a9ccf23366 Update sbt-mdoc to 2.2.19 (#2833) 2021-03-30 06:19:11 -05:00
Scala Steward
c2e054d906 Update scodec-bits to 1.1.25 (#2835) 2021-03-30 06:16:58 -05:00
benthecarman
85ff255df3 Update akka to v10.2.4 (#2832) 2021-03-29 09:59:34 -05:00
Scala Steward
2cc2da9761 Update javafx-base, javafx-controls, ... to 17-ea+5 (#2829) 2021-03-29 06:53:11 -05:00
benthecarman
8cd481650d Fix potential unordered nonces in announcement (#2831) 2021-03-28 11:44:47 -05:00
Chris Stewart
c2409b46c4 Silence scalajs warnings for org.bitcoins.crypto package (#2822)
* Silence scalajs warnings for org.bitcoins.crypto package

* Add comments

* Create 'facades' package, move all js facades into that package. Make the new -Wconf flags work with only scala 2.13.x

* Small cleanups
2021-03-28 08:28:21 -05:00
Nadav Kohen
e6899b20b1 Made ECPrivateKey signing synchronous and got src compiling (#2652)
Fixed tests

De-futured tx buidling, finalizing and signing

Responded to review
2021-03-23 17:05:58 -05:00
benthecarman
7aa3ccd974 Attempt to find type name when parsing incorrect tlv type (#2820) 2021-03-23 13:21:43 -05:00
benthecarman
50d4e1f969 Move hard coded test vectors from resource files into scala files (#2818)
* Remove sighash.json resource

* Remove trezor_bip39_vectors.json

* Hardcode transaction json test vectors

* Hardcode big size uint json test vectors

* Hardcode base58 json test vectors

* Hardcode script tests json test vectors

* Make BlockTest JVM only
2021-03-23 12:06:18 -05:00
Scala Steward
c5a3b5ac3f Update sbt-ci-release to 1.5.7 (#2819) 2021-03-23 07:53:52 -05:00
benthecarman
c3c96a61c3 Reduce fee rate for spending coinbase utxos (#2815) 2021-03-23 05:56:05 -05:00
rorp
85f6ee889c Adaptor signatures for Scala.js (#2794)
* Schnorr sigs for Scala.js

* fix build

* put BIP340 test vectors in a shared space

* remove teskit dependency, fix point edge cases

* fix build

* Adaptor signatures for Scala.jsr

* add some more tests

* add unit tests for point addition

* scaladoc

* add more public keys tests

* Add scaladoc

* Remove extra isCompressed flag on CryptoRuntime.toPublicKey() as it is inside of ECPrivateKey already

Co-authored-by: christewart <stewart.chris1234@gmail.com>
2021-03-22 16:50:04 -05:00
rorp
911fca5825 Schnorr js (#2805)
* Schnorr sigs for Scala.js

* fix build

* put BIP340 test vectors in a shared space

* remove teskit dependency, fix point edge cases

* fix build

* add unit tests for point addition

* scaladoc

* cleanup

* respond to the comments

* Fix usage of BitcoinSLogger

Co-authored-by: christewart <stewart.chris1234@gmail.com>
2021-03-22 12:56:40 -05:00
benthecarman
c6c4e83e9e Remove logging from testkit core (#2813)
* Remove logging from testkit core

* Fixup deps
2021-03-22 11:48:27 -05:00
benthecarman
07514e2348 Remove logging from core (#2810)
* Remove logging from core

* Remove slf4j from testkit core

* Remove logback from coretest
2021-03-21 19:11:55 -05:00
benthecarman
c3e952a18b Add docs for getblockheader (#2811) 2021-03-21 14:09:34 -05:00
Chris Stewart
2287c6ced9 Implement caching of bitcoind in the walletTest,nodeTest, and partially bitcoindRpcTest project (#2792)
* Create CachedBitcoind, implement it in FundTransactionHandlingTest

* Add BaseWalletTest, extend it with BitcoinSWalletTest & BitcoinSWalletTestCachedBitcoind, add CachedBitcoinV19 and use it RescanHandlingTest

* Make ProcessBlockTest work with cached bitcoind

* Make trait for CachedBitcoindNewest for the newest version of bitcoind

* Make UTXOLifeCycleTest use cached bitcoind

* Add WalletBloom, WalletSyncTest to use cached bitcoinds

* Add WalletIntegrationTest

* Rework beforeAll() and afterAll() into the super trait like BaseWalletTest

* Add standlone BitcoindFixtures, use it in BitcoindBackendTest

* Use new BitcoindFixtures in BitcoindBlockPollingTest

* Introduce BaseNodeTest, start implementing the usage of cached bitcoinds in the nodeTest project

* Use cached bitcoind's with SpvNodeTest & SpvNodeWithWalletTest

* Fix bug on postgres with reusing database, upsert the genesis header rather than create it

* Get NeutrinoNode tests workign with cached bitcoinds

* Fix NeutrinoNodeWithWallet by destroying wallet state for Postgres

* Add teardown helper method for bitcoind

* Teardown chain project when using node fixtures since node is dependent upon the chain project.

* Turn off parallelExecution again

* Switch the parallelExecution flag to only be set on CI, so we can get better performance when running locally

* Start implementing BitcoindFixtures, use BitcoindFixturesCachedTriple on TestUtilRpcTest

* Fix compiler errors, begin implementing NodePair

* Refactor TestRpcUtilTest to use 2 bitcoinds rather than 2

* Reduce the number of bitcoinds that MultiWalletRpcTest needs from 3 -> 1

* Reduce number of bitcoinds used in WalletRpcTest from 3 -> 2

* Add some documentation

* Try to re-add parallelExecution

* Reduce the number of bitcoinds used in PsbtRpcTest from 3 -> 2

* Disable parallelExecution in Test again

* Make BitcoindV21RpcClientTest & BitcoindV20RpcClientTest reduce bitcoind usage from 2 -> 1

* Make BitcoindV19RpcClienttest reduce bitcoind usage from 2 -> 1

* Rework MempoolRpcTest to use fixtures, add BitcoindVersion to CachedBitcoindCollection

* Make sure clientAccumm has to be specified as a paramter now rather than filling in by default

* Begin parameterizing NodePair/NodeTriple to retain type information for the specific version of bitcoind that was used

* Don't implement version in super trait

* Fix docs

* Fix async issue in V21 test suite

* Append to vectors in CachedBitcoinCollection rather than replace

* Fix rebase issues

* Add scaladocs

* Fix BitcoindV18RpcClient address info test

* Implement fixtures in BitcoindV17RpcClientTest fixtures

* Cleanup v17 PsbtRpcTest

* Reduce bitcoind usage from 3 -> 1 in BitcoindV18RpcClientTest

* Remove abandon transaction test, this allows us to reduce the number of bitcoind's used in MempoolRpcTest from 3 -> 2

* Remove the requirement to inject  BitcoinSAsyncFixtureTest, add it in the test traits explicitly to make things easier. Also add explicit afterAll() method to tear down both the CachedBitcoind & BitcoinSAsyncFixtureTest

* Fix missing Await.result() in BitcoindRpcTest.afterAll()

* Rework MultiWalletRpcTest to use a NodePair

* Rework BlockchainRpcTest to use fixtures

* Rework Client start()/stop() methods. Now use an AtomicBoolean to indicate when a user has requested a client to start/stop rather than sending pings to bitcoind that can fail because the conneciton pool has been shutdown in test cases

* Try my luck with turning on parallelExecution in CI again

* Revert parallelExecution, now testes do not run in parallel on CI

* Only turn off parallelExecution for bitcoindRpcTest

* Adjust build to only have bitcoindRpcTest NOT in run parallel on mac, reduce number of blocks used in BitcoindRpcTestUtil.createNodeSequence

* Run less tests in the rpc test suite as that takes the longest, move them over to node/wallet/dlc test suite on mac osx CI

* Don't run eclair tests in parallel either

* Remove CachedBitcoind from BitcoinSWalletTest

* Fix async bug in test case

* Push to github to force re-run of CI

* Push to github to force re-run of CI

* Push to github to force re-run of CI
2021-03-19 06:37:53 -05:00
benthecarman
b0f7d6f26b Implement bech32m (#2572)
* Implement bech32m

* Respond to review
2021-03-18 18:04:38 -05:00
benthecarman
12bff309c2 Add Broadcast TxoState (#2735)
* Add broadcast TxoState

* Update scaladoc
2021-03-18 14:16:53 -05:00
Scala Steward
1daba85ddf Update javafx-base, javafx-controls, ... to 17-ea+3 (#2804) 2021-03-17 09:47:46 -05:00
Chris Stewart
bfe7b3fb6f Create NativeProcessFactory, extend it in both Client.scala & EclairRpcClient.scala (#2800) 2021-03-17 09:23:13 -05:00
Chris Stewart
78448b277c Revert "Schnorr sigs for Scala.js (#2784)" (#2802)
This reverts commit 8e7bde0ed9.
2021-03-16 13:19:16 -05:00
rorp
8e7bde0ed9 Schnorr sigs for Scala.js (#2784) 2021-03-16 10:21:47 -07:00
benthecarman
9494eec1b8 Move blockhash to tx table from spending info table (#2744)
* Move blockhash to tx table from spending info table

* Add test, fix spending tx id col name

* Scaladocs, add test

* Add more unit test

* Make id not comparable in process tx test

* Fix tests

* attempt to fix

* Add mempool comment to scaladoc

* Deparallelize process inputs & outputs
2021-03-16 10:05:29 -05:00
rorp
7e23eecb20 SipHash for Scala.js (#2797) 2021-03-16 09:43:50 -05:00
Scala Steward
fba880e5a9 Update sbt-native-packager to 1.8.1 (#2798) 2021-03-16 08:16:30 -05:00
Chris Stewart
65cb0d1615 Move tests out of bitcoindRpcTest that belong in async-utils (#2796)
* Move tests out of bitcoindRpcTest that belong in async-utils

* Make AsyncUtilApi
2021-03-16 07:48:06 -05:00
Chris Stewart
00df875ec2 update Base docker image to a ubuntu buster (#2799) 2021-03-15 15:33:17 -05:00
Scala Steward
77ee3f7e8d Update sbt-ci-release to 1.5.6 (#2789) 2021-03-15 10:48:23 -05:00
Chris Stewart
7764828b3a Bump timeout on bind to avoid spurious ci failures hopefully (#2791)
* Bump timeout on bind to avoid spurious ci failures hopefully

* Actually pass the timeout

* Bump to 30 seconds
2021-03-11 12:24:28 -06:00
Chris Stewart
49544fc7f3 Turn off parallelExecution and remove extra AsyncUtil test class (#2790) 2021-03-11 09:36:54 -06:00
Chris Stewart
5b4aac5178 Refactor starting second bitcoind in MempoolRpcTest, remove Thread.sleep (#2776)
* Refactor starting second bitcoind in MempoolRpcTest, remove Thread.sleep

* Add AkkaUtil.nonBlockingSleep(), replace usages of Thread.sleep() with it where possible

* Remove more Thread.sleep()

* Try bumping threadpool for scheduler

* Reduce scheduler threadpool size to 2

* Push to github to force re-run of CI
2021-03-10 09:36:34 -06:00
Chris Stewart
7245eb0ec9 Update all deps that failed because of bad build (#2774)
* Update all deps that failed because of bad build

* Revert jvmopts

* Try bumping jvmopts max heap size to get mac builds to work

* Double up timeout in ScriptGenerators

* Use Future.successful() in signFunction to try and reduce overload on executionContext

* Push to github to force re-run of CI

* Upgrade sbt to 1.4.9
2021-03-10 06:48:21 -06:00
Chris Stewart
e06c9e44cc 2021 03 09 async utils tests (#2781)
* Add asyncUtils test build

* Add asyncUtilsTest

* revert scheudler to 2 threads

* Push to github to force re-run of CI
2021-03-09 11:13:46 -06:00
benthecarman
4bf4f0a027 Add signed outcome to getevent rpc, fix other small api bugs (#2757)
* Add signed outcome to get event rpc, fix other small api bugs

* Create separate type for decomp DLCAttestationType

* Add DLCOutcomeType to Oracle Event

* Calculate dlcOutcome, add invariant

* Fix test
2021-03-08 10:55:47 -06:00
Chris Stewart
aed21f02c7 Add fetch depth zero to everything to fix bug introduced in #2766 (#2773) 2021-03-08 08:47:15 -06:00