Commit Graph

1911 Commits

Author SHA1 Message Date
Chris Stewart
c26ef26d57 2020 05 19 improve test performance (#1449)
* Reduce number of property based tests on BIP32PathTest and add a Future to NetworkPayloadTest's property based tests so it hopefully runs faster on CI

* Run scalafmt

* Make a few more property based tests async

* Make forAllParallel, refactor some test cases to use it

* Make BlockMessageTest async

* Bump timeout
2020-05-20 06:55:36 -05:00
Ben Carman
4942315c9f Fix allowing BytesToPushOntoStack(0) (#1448) 2020-05-19 16:52:58 -05:00
Chris Stewart
4eb22932ae Reduce number of property based tests from 200 -> 100 so we don't time out on CI (#1447) 2020-05-19 07:25:34 -05:00
Ben Carman
bef756985a Fix spacing in README.md (#1444) 2020-05-18 20:26:09 -05:00
Chris Stewart
bc600c230e 2020 05 17 optimizations (#1435)
* Make ScriptOperationFactory subclasses use a val to cache operaetions rather than operations

* Make ScriptOperation's use a Vector rather than Seq. Seq is a trait that can sometimes be backed by a List which can have some O(n) behavior

* Remove BlockTest benchamarking test case

* Put popular opcodes at beginning of ScriptOperations.operations for an optimization

* Remove Try() allocation on ECPublicKey.isFullyValid()

* Fix how CompactSizeUInt was serialized to be more efficient, move isMultiSig() and isLocktimeSPK() to be inline so we don't evaluate it unless we absolutely need to

* Use Map inside of ScriptOperation.fromByte()

* Update map to look up script operation rather than iterating
2020-05-18 20:23:12 -05:00
Ben Carman
bfa9637156 Add DLC GUI Docs (#1438) 2020-05-18 19:04:31 -05:00
Nadav Kohen
f2fb27dbe3 Fixed buggy type inference on Gen.frequency by explicitly passing in type parameter (#1439) 2020-05-18 14:56:57 -05:00
Ben Carman
b240130c76 Remove GUI unused imports (#1440) 2020-05-18 14:36:45 -05:00
Chris Stewart
0ac3328d4b Remove the clause in Transction.fromHex() where we throw in the case … (#1431)
* Remove the clause in Transction.fromHex() where we throw in the case of a witness transaction, do something smarter and look at bytes in the byte vector

* WIP add test case

* Add back try/catch as it's still necessary for cases of unsigned base transactions

* Add permalink to example test case
2020-05-18 14:28:00 -05:00
Ben Carman
51fcb793be Add ability to make OP_RETURN commitments (#1417) 2020-05-18 14:27:05 -05:00
Chris Stewart
cec29e6894 Try and improve reliability of UpdateBloomFilterTest, also add getMem… (#1434)
* Try and improve reliability of UpdateBloomFilterTest, also add getMemPoolEntryOpt() that returns an Option indicating if a tx was in the mempool

* Fix nits
2020-05-18 13:01:25 -05:00
Scala Steward
b416a5eddf Update flyway-core to 6.4.2 (#1418) 2020-05-18 11:55:48 -05:00
Scala Steward
6c5d14f779 Update flyway-sbt to 6.4.2 (#1424) 2020-05-18 11:31:32 -05:00
Ben Carman
e44a08bd39 Wallet Send with coin selection algorithim (#1409) 2020-05-18 11:26:39 -05:00
Ben Carman
6067991e02 Add bitcoin-s icon, add dark theme to dialogs (#1425) 2020-05-18 11:16:41 -05:00
Scala Steward
e6ea2e0fb1 Update scalacheck-1-14 to 3.1.2.0 (#1423) 2020-05-18 11:16:16 -05:00
Nadav Kohen
4eb9980d6b InputInfo Refactor (#1400)
Added OutputReference and introduced public key computation on SPKs

Made InputInfo into an ADT

Made UTXOSpendingInfo use InputInfo

Replaced UTXOSpendingInfo with NewSpendingInfo and got non-test things compiling

Made aliases for (NewSpendingInfo/NewSpendingInfoFull/NewSpendingInfoSingle)[InputInfo]

Got rid of source code mention of UTXOSpendingInfo

sbt compile passes

tests compile

Fixed all coreTest tests

Renamed to UTXOInfo

Some cleanup

Moved redeem script and script witness accessors to companion object

Responded to code review

Added OutputReference and scaladocs

Moved p2pkhPreImageOpt downstream and generalized to hashPreImages

Fixed adding-spks.md

Fixed psbts.md and txbuilder.md

Renamed UTXOInfo

Apply renaming to docs
2020-05-15 11:14:15 -05:00
Scala Steward
af35c511d6 Update sbt-bloop to 1.4.1 (#1430) 2020-05-15 09:48:50 -05:00
Ben Carman
65968573cc Fix Warning in TransactionDb (#1427) 2020-05-15 06:43:57 -05:00
Scala Steward
23e476d837 Update sbt-bloop to 1.4.0 (#1414) 2020-05-13 07:40:29 -05:00
Ben Carman
867e2a9755 Add list unused addresses call (#1408) 2020-05-12 09:29:02 -05:00
Ben Carman
711f5cb99c Add listFundedAddresses call (#1407) 2020-05-12 07:33:22 -05:00
Ben Carman
721b28aefd Add listSpentAddresses call (#1406) 2020-05-12 07:24:52 -05:00
Ben Carman
c571585b3b Wallet send from outpoints (#1405) 2020-05-12 07:24:36 -05:00
Scala Steward
583da51958 Update akka-http, akka-http-testkit to 10.1.12 (#1415) 2020-05-12 06:42:26 -05:00
Scala Steward
cf6af8279c Update sbt-native-packager to 1.7.2 (#1416) 2020-05-12 06:29:17 -05:00
Chris Stewart
65f21acbf8 2020 05 11 bech32 addr tostring (#1413)
* Make Bech32Address.toString actually print the string representation not the object one

* Remove Bech32Address.toString all together and use the super class definition

* Add test case

* Run scalafmt
2020-05-11 10:59:36 -05:00
Scala Steward
d4c4ec3311 Update scalafx to 14-R19 (#1410) 2020-05-10 09:24:55 -05:00
Scala Steward
69686128bb Update scalatest to 3.1.2 (#1412) 2020-05-10 09:24:43 -05:00
Chris Stewart
40c4af93a7 Modify gui background color to be same as our website (#1404) 2020-05-09 08:03:29 -05:00
Ben Carman
15b6b2376f Fix Oracle info in DLC doc (#1401) 2020-05-07 14:26:26 -05:00
Chris Stewart
d3b18137fd DLC code snippet clarification (#1393)
* Give the different outcome amounts a val for clarity in documentation, add a missing import, and change the hash being signed by the oracle to more descriptive of a specific event

* Fix missing amounts

* Clarify comment even more
2020-05-06 16:47:21 -05:00
Scala Steward
9f54a8a097 Update sbt-mdoc to 2.2.0 (#1397) 2020-05-06 06:42:58 -05:00
Scala Steward
e2e01bcbe3 Update sqlite-jdbc to 3.31.1 (#1396) 2020-05-05 07:18:07 -05:00
Chris Stewart
83b6a74b18 Add rpcport configuration options in both bitcoin-s.conf and as a command line parameter (#1387)
Implement ability to specify rpcport with bitcoin-s-cli
2020-05-04 19:09:32 -05:00
Scala Steward
9c25e8d47b Update sbt-native-packager to 1.7.1 (#1395) 2020-05-04 19:08:58 -05:00
Nadav Kohen
a503441619 Crypto Project Refactor (#1380)
* Added crypto project and decoupled BitcoinSLogger from NetworkElement

Decoupled BitcoinSLogger from Factory

Moved NetworkElement into crypto project

Moved Factory and BitcoinSUtil (renamed to BytesUtil) to crypto project

Moved MaskedToString to crypto project

Added BytesUtil to imports and cleaned up CryptoUtil.recoverPoint

Moved the rest of crypto stuff to the crypto project

Moved crypto tests to crypto-test project

* Added documentation for crypto project
2020-04-30 12:34:53 -05:00
Ben Carman
90030719e5 Log correct type of node sync (#1384)
* Log correct type of node sync

* Fix stopped node logs
2020-04-30 12:10:48 -05:00
Ben Carman
fddca91e79 Neutrino Logging (#1382) 2020-04-30 09:05:26 -05:00
Ben Carman
6d7685b76e Add wallet creation time for rescans (#1353)
* Add wallet creation time for rescans

* Fix docs

* Clean up and add test

* Remove account bday

* Fix compile issue and docs

* Add more chain handler tests

* Use Instant over Long, add docs

* Fix docs
2020-04-29 09:49:41 -05:00
Chris Stewart
3c008ff82b Attempt to add a bit of delay on expecting rescan to fail so we dont' have as much of a async issue (#1381) 2020-04-28 16:34:07 -05:00
Ben Carman
4234561db9 Remove Unlocked vs Locked Wallet distinction (#1379)
* Remove Unlocked vs Locked Wallet distinction

* Add back TODO comment
2020-04-28 13:58:14 -05:00
Ben Carman
b8331d4cf1 Re-enable NeutrinoNodeWithWalletTest for Linux (#1366)
* Re-enable NeutrinoNodeWithWalletTest with it disabled for mac

* Change to only Linux

* Only disable for CI runs

* Move IsCI to BitcoinSUtil

* Fix compile issue for earlier versions

* Fix syncing compact filters to not skip last filter

* Fix test to be compatible with new start state

* Use correct isCI

* Fix compile issue

* set CI env
2020-04-27 18:20:47 -05:00
Chris Stewart
2a785388bf Create KeyManagerTestUtil.bip39PasswordNonEmpty for test case that requires non empty password (#1373) 2020-04-27 13:41:18 -05:00
Chris Stewart
19db1b765a Remove compile for dlc.md as we don't have schnorr in master (#1378) 2020-04-26 21:04:16 -05:00
Chris Stewart
e02664b01a Add fixed dlc doc instructions (#1376) 2020-04-26 18:18:27 -05:00
Ben Carman
37c62369eb Batch processing compact filters (#1363)
* Batch processing compact filters

* Use one vector, rename param

* Fix compile issue on older versions

* Process sequentially
2020-04-26 09:34:41 -05:00
Scala Steward
3592e5575b Update flyway-sbt to 6.4.0 (#1372) 2020-04-26 08:54:41 -05:00
Chris Stewart
4c3f6f8e67 2020 04 08 multi db dao (#1355)
* Implement Slick's multi database support via our DAOs

WIP2 work on chain project

WIP make JdbcProfieComponent so we have a common JdbcProfile

WIP2

Clean up a few things

WIP got CRUDAutoInc compiling

Get closer to everything compiling in the chain project

Begin moving database code into JdbcProfileComponent

WIP source compiling

Get dbCommonsTest/ test cases passing

Get rest of tests compiling and passing

* Rebase onto master, fix conflicts

* Run scalafmt

* Run scalafmt again

* Cleanup a few compiler warnings by adding type annotations to thigns

* Explicitly cast tables where they are needed in the wallet project where we need TableQuery for foreignkey / joins in slick

* Redo definition of 'table' to use the profile.api.TableQuery in scope

* Rename all *Table.scala files to *Db.scala

* First crack at address ben's code review

* Fix docs compile issue

* Fixed casting (#30)

* Fixed AppConfig casting

* Fixed TableQuery casting in DbManagement subtypes

* Fixed casts in DAOs relating to internal types

* Address nadav's code review, move JdbcProfileComponent into it's own file

* Remove unused listTables() method

Co-authored-by: Nadav Kohen <nadavk25@gmail.com>
2020-04-25 11:28:58 -05:00
Ben Carman
3f14add2d0 Ignore immature coinbase outputs when funding a transaction (#1365)
* Ignore immature coinbase outputs when funding a transaction

* Create Consensus.coinbaseMaturity
2020-04-24 18:04:42 -05:00