Commit graph

1770 commits

Author SHA1 Message Date
Scala Steward
1dea06abfa Update sbt-bloop to 1.3.5 (#829) 2019-10-24 06:00:51 -05:00
Nadav Kohen
d2b6a836c1 P2WSH Signer! (#797)
* Created P2WSHSigner and removed P2WSHWitnessSPKV0 case from P2PK and P2PKH signers

* Moved P2WSH MultiSig from MultiSigSigner to P2WSHSigner

* Cleaned up P2WSH case of BitcoinTxBuilder.signAndAddInput to exclusively use P2WSHSigner

* Replaced Option[(TxSigComponent, ScriptPubKey)] with an ADT

* Added signing with overrides to super Signer class to simplify delegation code

* Added Scaladocs for OverridesForNestedSigning ADT

* Made naming better for OverridesForNestedSigning ADT and added scaladocs
2019-10-23 15:29:52 -05:00
rorp
6df467d295 Improve EclairRpcClientTest execution time (#826) 2019-10-23 14:29:48 -05:00
Nadav Kohen
eb78d61c58 Removed the ScriptProgram companion object (#811) 2019-10-23 10:12:41 -05:00
dependabot[bot]
0faa3c54b2 Bump mixin-deep from 1.3.1 to 1.3.2 in /website (#822)
Bumps [mixin-deep](https://github.com/jonschlinkert/mixin-deep) from 1.3.1 to 1.3.2.
- [Release notes](https://github.com/jonschlinkert/mixin-deep/releases)
- [Commits](https://github.com/jonschlinkert/mixin-deep/compare/1.3.1...1.3.2)

Signed-off-by: dependabot[bot] <support@github.com>
2019-10-23 07:19:03 -05:00
dependabot[bot]
cdf9dfaafa Bump lodash.merge from 4.6.1 to 4.6.2 in /website (#821)
Bumps [lodash.merge](https://github.com/lodash/lodash) from 4.6.1 to 4.6.2.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/commits)

Signed-off-by: dependabot[bot] <support@github.com>
2019-10-23 07:18:45 -05:00
Scala Steward
d351d04393 Update sttp:core to 1.7.2 (#808) 2019-10-22 14:25:45 -05:00
dependabot[bot]
4c263237f7 Bump lodash from 4.17.11 to 4.17.15 in /website (#819)
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.11 to 4.17.15.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.11...4.17.15)

Signed-off-by: dependabot[bot] <support@github.com>
2019-10-22 14:25:13 -05:00
Ben Carman
089bb2bd72 Refactor old test cases to use BitcoinSUnitTest (#814) 2019-10-20 02:35:03 -05:00
Scala Steward
d141508b02 Update akka-actor, akka-stream, ... to 2.5.26 (#817) 2019-10-20 01:54:12 -05:00
philbertw4
a91cff0d07 quick fix of link to txbuilder examples in docs (#815) 2019-10-16 07:46:21 -05:00
Chris Stewart
8184f4ace1
Update script_tests.json, fix bugs that were unveiled with that updat… (#799)
* Update script_tests.json, fix bugs that were unveiled with that update. Specifically around handling negative zero in Script, and cleanstack behavior for segwit scripts. We were not checking for equality at the byte level for negative zero. With cleanstack, we were failing the script, but not failing with the correct error. If you look at interpreter.cpp in bitcoin core, cleanstack check is done before checking if the stacktop is true or false

* Address code review
2019-10-15 09:57:47 -05:00
rorp
140702ad42 Increase test coverage (#810)
* Increase test coverage

* more coverage
2019-10-14 19:54:34 -05:00
rorp
ba91c6107c Create removed Neutrino tables (#796) 2019-10-14 14:42:59 -05:00
Scala Steward
78886bef4c Update sbt to 1.3.3 (#809) 2019-10-14 13:56:58 -05:00
Scala Steward
b240b3c4ab Update typesafe:config to 1.4.0 (#803) 2019-10-13 19:30:09 -05:00
Ben Carman
e9c4b10f1c Script Program apply method refactor part 5 (#760) (#801)
* Script Program apply method refactor part 5 (#760)

* Formatting
2019-10-13 13:20:03 -05:00
Ben Carman
cd76bf5455 Script Program apply method refactor part 7 (#760) (#804) 2019-10-13 09:17:28 -05:00
Ben Carman
6d1b3049b5 Script Program apply method refactor part 6 (#760) (#802) 2019-10-13 09:09:56 -05:00
Ben Carman
3ef128f4b3 Script Program apply method refactor part 4 (#760) (#800) 2019-10-12 11:14:56 -05:00
Ben Carman
672446b7a5 Script Program apply method refactor part 3 (#760) (#795)
* Script Program apply method refactor part 3 (#760)

* Remove unsused method

* Documentation

* Fix test case
2019-10-12 11:09:37 -05:00
Ben Carman
25f483104a Script Program apply method refactor part 2 (#760) (#794)
* Script Program apply method refactor part 2 (#760)

* Remove method
2019-10-12 08:18:36 -05:00
Ben Carman
bbe1e87d94 Script Program apply method refactor part 1 (#760) (#793)
* Script Program apply method refactor part 1 (#760)

* Simplification of line

* Typo fix
2019-10-12 08:14:34 -05:00
rorp
3f734a95db Make ChainApi to scan the block filters in order to find matches (#786)
* Make ChainApi to scan the block filters in order to find matches

* performance improvements, unit test

* some parallelization

* addressed comments

* parallelism level

* fix parallelism computation

* Scala 2.11 compatibility

* increased test coverage

* cleanup

* more checks and cleanup

* change ChainApi.getMatchingBlocks signature

* some more changes
2019-10-11 14:19:42 -05:00
Nadav Kohen
7b3e9f747a 2019 10 01 script program cleanup (#791)
* Tightened up types, only allowing ExecutionInProgressScriptPrograms to be executed in Script OPs and having output type that cannot be PreExecutionScriptProgram

* Fixed all tests!

* Replaced all calls to loop and loopOrComplete with a single one at the bottom to retain the tailrec property

* Added a couple docs
2019-10-08 12:28:58 -05:00
Nadav Kohen
c3df666aa5 2019 10 01 script interpreter cleanup (#772)
* Removed all IntelliJ warnings and did some very minor and contained cleanup

* Refactored ScriptInterpreter.run into nicer pieces

* Replaced all calls to isInstanceOf with matches
2019-10-08 10:14:00 -05:00
Chris Stewart
0b75160455
Run scalafmt, i forgot to run on #783 (#788) 2019-10-07 08:16:28 -05:00
Scala Steward
351c60a4e5 Update sbt-ci-release to 1.4.31 (#754) 2019-10-07 06:12:16 -05:00
Scala Steward
bddf1ce44c Update sbt-bloop to 1.3.4 (#787) 2019-10-07 06:11:40 -05:00
Scala Steward
3973b8d2b4 Update sttp:core to 1.7.0 (#785) 2019-10-07 06:10:48 -05:00
Chris Stewart
09ea1fb3cd
Use the fact that network headers specify the number of bytes in the … (#783)
* Use the fact that network headers specify the number of bytes in the payload rather than just parsing from bytes.size, this should allow us to be more precise when parsing NetworkPayloads rather than _hoping_ that bytes.size does not land on pseudo-valid NetworkPayload. This hopefully resolves #782

* Add safety check around HeadersMessage.toString()

* Add invariant to NetworkMessage saying payloadSize in header must be the actual payload size
2019-10-06 09:48:53 -05:00
rorp
5cc0b30544 Optimize org.bitcoins.chain.blockchain.BaseBlockChain (#781)
* Optimize org.bitcoins.chain.blockchain.BaseBlockChain

* remove toStream calls

* cleanup

* fix IndexOutOfBoundsException
2019-10-06 09:47:02 -05:00
Scala Steward
b23fa50be6 Update sttp:core to 1.6.8 (#773) 2019-10-06 09:33:31 -05:00
rorp
80c8636308 Disable OSX neurtino tests in CI (#777)
* Disable OSX neurtino tests in CI

* fix command line

* fix travis config

* revert .travis and mark NeutrinoNodeTest as @DoNotDiscover
2019-10-06 09:30:08 -05:00
Chris Stewart
6476e3405d
Add a log at INFO level to indicate we are making progress while syncing (#780)
* Add a log at INFO level to indicate we are making progress while syncing

* Adjust sync log message to INFO in p2p code

* Fix off by one error

* Run scalafmt
2019-10-03 14:57:02 -05:00
rorp
5ec86aef61 Fix bitcoind version for eclair tests (#778) 2019-10-03 13:16:23 -05:00
Chris Stewart
cee1e82d0c
Reduce GCSTest by more, remove unused warnings when using scala console from sbt (#779) 2019-10-03 09:46:43 -05:00
Scala Steward
9aa4b711fa Update sbt-bloop to 1.3.3 (#775) 2019-10-03 08:37:10 -05:00
rorp
a42d297eeb Remove bitcoind dependency from node (#770)
* Remove bitcoind dependency from node

* addded some comments
2019-10-01 14:11:47 -05:00
Chris Stewart
e66bf4c2e0
Remove isInitialized() check in sendMsg, which was causing a deadlock (#763)
* Remove isInitialized() check in sendMsg, which was causing a deadlock

* Enable akka logging to help debug NeutrinoNodeTest

* Revert to bypassing the isInitialized() check in sendMsg()

* Run scalafmt again
2019-10-01 06:25:03 -05:00
rorp
27560ac1a5 Make tests to not require pre-installed bitcoind (#766)
* Make tests to not require pre-installed bitcoind

* update docs
2019-10-01 06:19:11 -05:00
Chris Stewart
029b106cd2
2019 09 28 common test trait (#767)
* Create base traits for async tests called BaseAsyncTest, and then create two subtypes, BitcoinSAsyncTest and BitcoinSAsyncFixtureTest to make it easier to manage resources related to test cases. Now it is easier to shutdown things like an actor system in a structured manner

* Remove two bitcoind tests that don't make sense, 'duration' in the parameter is _really_ an interval (bad naming by usTesting an interval does not make sense inside of TestRpcUtilTest

* Turn log off for ChainAppConfigTest we expect to fail

* Bump timeout for BitcoinSUnitTest, use builtint sbt scalafmtCheck

* Remove hardcoded scalafmt binary

* reduce generator size to attempt to fix #768
2019-09-30 14:55:25 -05:00
Chris Stewart
81dcdbeb57
2019 09 27 logging refactor pt2 (#765)
* Remove AKKA_CONFIG that was preventing sane logging for akka, move db-commons reference.conf to testkit so we can control testkit applications, and then rename app/server/.../application.conf to reference.conf like good libraries should do

* Update contributing.md

* update a few more links inside of contributing.md

* Run scalafmt
2019-09-28 09:50:42 -05:00
Chris Stewart
5d28e9143d
Add akka logging documentation to our contributing.md (#764) 2019-09-27 10:56:16 -05:00
Nadav Kohen
4ee36e84e9 Removed the sealed trait and private case class Impl pattern from ScriptPrograms (#759) 2019-09-26 07:31:54 -05:00
Chris Stewart
3f0506f7c0
Run scalafmt (#762) 2019-09-26 07:31:30 -05:00
Chris Stewart
dadd522c6a
Remove hard coded log level in test app config (#757)
* Remove hard coded log level in test app config

* Change log level in default reference.conf to WARN so we have the same log level as before
2019-09-25 15:47:27 -05:00
rorp
933f0fcfd0 Initial BIP157 support (#695)
* WIP: Initial BIP157 support

* store block hash and hetgh along with its compact filter header

* download and parse block filters

* getcfilters/cfilter

* cfilter table

* rescan full filter chain

* improved rescan performance

* optimize compact headers download

* addressed the PR comments

* split SVP and Neutrino node implementations

* configurable filter batch sizes

* initial filter sync

* addressed comments

* chage filter table's primary key

* fix Golomb filter deserialization

* batch database inserts

* neutrino node test

* fixed node test

* addressed the PR comments

* serializers tests

* cleanup

* fix compilation errors

* fix unit tests

* increase test coverage

* enable NeutrinoNodeTest

* make scalafmt happy

* don't cache experimental binaries

* inclease test coverage

* fix unit tests

* more granular CI tests

* disable NeutrinoNodeTest

* refactor tests

* addressed comments

* test coveage

* fix formatting

* responded to the comments

* some more changes

* fix the build

* test coverage

* revert testnet3 config parameter

* minor changes

* cleanup
2019-09-25 13:18:51 -05:00
Chris Stewart
71a136b03d
Fix bug where we were sending messages before we were fully initialized (#755)
* Fix bug where we were sending messages before we were fully initialized

* Move the pattern match out of isInitialized() future in sendMsg()
2019-09-24 09:43:27 -05:00
Scala Steward
c886681c7d Update sbt to 1.3.2 (#752) 2019-09-22 17:21:07 -05:00