Commit Graph

416 Commits

Author SHA1 Message Date
Scala Steward
ab3d634d5f Update sqlite-jdbc to 3.32.3 (#1600) 2020-06-20 08:12:26 -05:00
Scala Steward
a69bff97cd Update scalacheck-1-14 to 3.2.0.0 (#1593) 2020-06-19 14:44:24 -05:00
Scala Steward
97a4886c6e Update scalafmt-core to 2.6.0 (#1579)
* Update scalafmt-core to 2.6.0

* Upgrade scalafmt, fix all formatting errors

* Scalafmt on 2.12

* fix test

* More fixes

Co-authored-by: Ben Carman <benthecarman@live.com>
2020-06-19 10:38:12 -05:00
Scala Steward
001d1c9d7a Update play-json to 2.9.0 (#1566)
Co-authored-by: Chris Stewart <stewart.chris1234@gmail.com>
2020-06-16 07:45:39 -05:00
Scala Steward
0dad44a0e5 Update sbt-mdoc to 2.2.2 (#1571) 2020-06-16 07:44:53 -05:00
Scala Steward
80c01436e9 Update sbt-native-packager to 1.7.3 (#1567) 2020-06-16 07:06:00 -05:00
Scala Steward
80d2a164a8 Update postgresql to 42.2.14 (#1569) 2020-06-16 07:05:18 -05:00
Scala Steward
2b6e084379 Update akka-actor, akka-stream, ... to 2.6.6 (#1565) 2020-06-16 06:45:46 -05:00
Scala Steward
b87ea5be17 Update sbt to 1.3.12 (#1570) 2020-06-16 06:37:04 -05:00
Scala Steward
12309d4401 Update scodec-bits to 1.1.16 (#1572) 2020-06-16 06:27:03 -05:00
rorp
823a392e98 PostgreSQL support (#1315) 2020-06-02 16:37:48 -05:00
Chris Stewart
0e334f0c68 2020 04 11 bump play json v (#1490)
* Bump play-json to 2.8.1

* Fix imports
2020-05-30 14:34:57 -05:00
Chris Stewart
5aeb8ebdd1 Bump akka to 2.6.4, fix deprecated things (#1374)
* Bump akka to 2.6.4, fix deprecated things

* Bump to 2.6.5 akka

* Clean up imports

* Remove materializer from FeeProviders
2020-05-30 08:49:28 -05:00
Chris Stewart
fd67109d54 Bump scodec to 1.14 (#1489) 2020-05-30 07:53:11 -05:00
Ben Carman
c10d5bc89b Fee Rate Api Support (#1470)
* Fee Rate Api Support

* FeeRateProvider Tests

* Rename folder

* Fix docs
2020-05-29 13:01:20 -05:00
Chris Stewart
ed3938d118 Filter -Xfatal-warnings when using scala console so we don't get error messages when you are trying out code (#1485) 2020-05-29 09:03:43 -05:00
Chris Stewart
b5853818ff Filter warnings on doc for publishing (#1484) 2020-05-29 07:03:18 -05:00
Chris Stewart
ccbc68d668 Add -Xfatal-warnings on Scala 2.13 (#1483)
* Add -Xfatal-warnings on Scala 2.13

* Turn off -Xfatal-warnings in docs/
2020-05-29 06:21:56 -05:00
Chris Stewart
44c9228c26 Drop 2.11 from inThisBuild.sbt and Deps.scala (#1479) 2020-05-28 11:49:53 -05:00
Scala Steward
524334a806 Update bcprov-jdk15on to 1.65.01 (#1476) 2020-05-27 15:26:07 -05:00
Nadav Kohen
14f2ae793a Implemented (lax) signature parsing in Bitcoin-S (#1446)
* Implemented parseDERLax signature parsing and bumped bouncy castle version to most recent

* implemented using iterators

* Factored out common functionality and added comments, it is readable now! Deleted C-like version in place of this one after property based tests showed them to be equivalent

* Made compatible with scala 2.12

* Make compatible with scala 2.11

* Added tests for lax DER signatures
2020-05-21 15:13:17 -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
Scala Steward
e6ea2e0fb1 Update scalacheck-1-14 to 3.1.2.0 (#1423) 2020-05-18 11:16:16 -05:00
Scala Steward
af35c511d6 Update sbt-bloop to 1.4.1 (#1430) 2020-05-15 09:48:50 -05:00
Scala Steward
23e476d837 Update sbt-bloop to 1.4.0 (#1414) 2020-05-13 07:40:29 -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
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
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
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
Scala Steward
3592e5575b Update flyway-sbt to 6.4.0 (#1372) 2020-04-26 08:54:41 -05:00
Chris Stewart
cb88b78540 Bump scala version to 2.13.2 (#1360) 2020-04-23 07:38:20 -05:00
Scala Steward
2f868f9d77 Update sbt-ci-release to 1.5.3 (#1352) 2020-04-22 08:29:03 -05:00
Scala Steward
214ebfa368 Update flyway-core to 6.4.0 (#1349) 2020-04-22 08:28:52 -05:00
Scala Steward
58b974e21e Update javafx-base, javafx-controls, ... to 14.0.1 (#1346) 2020-04-20 13:17:14 -05:00
Scala Steward
fcc7e5ac52 Update sbt to 1.3.10 (#1337) 2020-04-15 06:24:19 -05:00
Ben Carman
aa8a2e14a6 Move Json Reader, Writers, and Serializers to App Commons (#1328)
* Move Json Reader, Writers, and Serializers to App Commons

* Move app-commons outside of app/
2020-04-10 14:33:37 -05:00
Scala Steward
d25e8eb8fb Update flyway-core to 6.3.3 (#1309) 2020-04-06 19:06:48 -05:00
Scala Steward
3b3d2414f7 Update akka-actor, akka-stream, ... to 2.5.31 (#1290) 2020-04-01 10:59:51 -05:00
Scala Steward
6420b90a7b Update javafx-base, javafx-controls, ... to 14 (#1288) 2020-04-01 08:46:34 -05:00
Scala Steward
7690ea277d Update sbt to 1.3.9 (#1289) 2020-04-01 08:46:12 -05:00
Nadav Kohen
c31a4a3f8a Constructed simple Bitcoin-S wallet GUI (#1285)
* Constructed simple Bitcoin-S wallet GUI

* Added note about bitcoin-s server in doc

* Removed wallet dep from gui

* Replaced lambdas with constructors for compatibility with scala 2.11

* Fixed after rebase
2020-03-31 14:30:24 -05:00
Scala Steward
89ccb868c0 Update flyway-core to 6.3.2 (#1269) 2020-03-24 08:52:58 -05:00
Scala Steward
9891b22cb1 Update janino to 3.1.2 (#1252) 2020-03-23 06:30:18 -05:00
Chris Stewart
5affff18f4 Bump sbt-native-packager to 1.7.0 (#1265) 2020-03-23 06:10:26 -05:00
Scala Steward
90141757b4 Update sbt-mdoc to 2.1.5 (#1260) 2020-03-21 08:08:18 -05:00
Scala Steward
59fbdda991 Update sbt-mdoc to 2.1.4 (#1244) 2020-03-19 07:59:24 -05:00
Scala Steward
45e1a90fba Update flyway-core to 6.3.1 (#1228) 2020-03-19 07:58:35 -05:00
Scala Steward
7055c0fc23 Update akka-actor, akka-stream, ... to 2.5.30 (#1221) 2020-03-15 13:21:36 -05:00
Scala Steward
e4fc678118 Update janino to 3.1.1 (#1212) 2020-03-11 07:25:46 -05:00
Chris Stewart
b460534449 Update flyway-core to 6.3.0 (#1195) 2020-03-05 15:47:34 -06:00
Chris Stewart
89b8989b2f 2020 02 23 scalatest show test duration (#1159)
* Make scalatest build show test duration

* Use more idiomatic flag passing
2020-02-23 10:22:28 -06:00
Scala Steward
95902d4148 Update scalacheck-1-14 to 3.1.1.1 (#1145) 2020-02-21 08:47:35 -06:00
Scala Steward
8257d61dbb Update scalatest to 3.1.1 (#1142) 2020-02-21 07:04:05 -06:00
Scala Steward
44211abe83 Update scalacheck-1-14 to 3.1.1.0 (#1143) 2020-02-21 07:03:38 -06:00
Scala Steward
2200abd2a2 Update flyway-core to 6.2.4 (#1141) 2020-02-20 09:50:10 -06:00
Scala Steward
47c8a4dd4f Update flyway-sbt to 6.2.3 (#1130) 2020-02-17 13:45:08 -06:00
Chris Stewart
2279313eb9 Move binaries to be stored inside of the HOME/.bitcoin-s/binaries instead of usrdir/binaries. This makes it so different projects that use bitcoin-s can re-use binaries instead of having to download them for every project (#1128) 2020-02-17 12:07:04 -06:00
Scala Steward
e053e1bf61 Update flyway-sbt to 6.2.2 (#1107) 2020-02-09 10:47:56 -06:00
Scala Steward
7a9d6b2d8c Update sbt-ci-release to 1.5.2 (#1106) 2020-02-09 10:47:24 -06:00
Scala Steward
095ca208c3 Update jeromq to 0.5.2 (#1087) 2020-02-07 10:10:32 -06:00
Scala Steward
64a417a091 Update sourcecode to 0.2.1 (#1103) 2020-02-07 07:38:05 -06:00
Scala Steward
af496c6b19 Update flyway-core to 6.2.2 (#1102) 2020-02-07 07:36:48 -06:00
Chris Stewart
c7bc0857f8 Add codehause dependecy as a work around for issue 1110, there is a i… (#1101)
* Add codehause dependecy as a work around for issue 1110, there is a issue in graalvm native image generator where images aren't being generated correctly. THis is related to the logback dependecy

* Add some comments about when the extra dep can be removed
2020-02-07 06:52:31 -06:00
Scala Steward
a1b5703be0 Update sbt to 1.3.8 (#1096) 2020-02-07 06:38:13 -06:00
Chris Stewart
0ec24a52d0 Add dependency graph plugin (#1089) 2020-02-02 09:56:31 -06:00
Chris Stewart
d5109578fd Revert flyway plugin version (#1084) 2020-01-31 11:27:13 -06:00
Scala Steward
a1e9bbd13b Update sbt-unidoc to 0.4.3 (#1079) 2020-01-31 13:08:24 +01:00
Scala Steward
653401931a Update flyway-core to 6.2.1 (#1082) 2020-01-31 13:07:54 +01:00
Scala Steward
110a4c0155 Update akka-actor, akka-stream, ... to 2.5.29 (#1077) 2020-01-28 18:42:20 +01:00
Scala Steward
ecbb706fa5 Update akka-actor, akka-stream, ... to 2.5.28 (#1072) 2020-01-28 06:16:02 -06:00
Scala Steward
d69973224b Update flyway-sbt to 6.2.0 (#1070) 2020-01-27 07:03:37 -06:00
Scala Steward
2870ccd91e Update flyway-core to 6.2.0 (#1062) 2020-01-23 13:59:50 -06:00
Ben Carman
ed428bd56c Txo state flyway (#1052)
* Add flyway migrations

* Make different project's migrations independent of each other

* Rework all AppConfig.initialize() to use migrations rather than what we were doing before

* TXO State migration

* Move to new file, drop old column

* Add block hash column

Co-authored-by: Chris Stewart <stewart.chris1234@gmail.com>
2020-01-22 15:34:36 -06:00
Scala Steward
15bfe4f4d9 Update sbt to 1.3.7 (#1034) 2020-01-18 15:42:28 -06:00
Scala Steward
90f33819c0 Update sourcecode to 0.2.0 (#1024) 2020-01-14 07:16:27 -06:00
Scala Steward
3df7fb824b Update sbt-mdoc to 2.1.1 (#1007) 2020-01-06 08:04:47 -06:00
Scala Steward
ef99f92bd4 Update sbt-ci-release to 1.5.0 (#992) 2020-01-02 06:58:30 -06:00
Scala Steward
31a233f0c5 Update scalacheck-1-14 to 3.1.0.1 (#987) 2019-12-27 05:54:10 -06:00
Scala Steward
62dff3f50a Update sbt-mdoc to 2.1.0 (#986) 2019-12-27 05:52:13 -06:00
Scala Steward
9ff7ebe467 Update sbt to 1.3.6 (#984) 2019-12-26 19:13:29 -06:00
Scala Steward
57420f4ae0 Update sqlite-jdbc to 3.30.1 (#982) 2019-12-25 07:33:24 -06:00
Scala Steward
d98f9eb754 Update sourcecode to 0.1.9 (#979) 2019-12-21 17:06:50 -06:00
Scala Steward
cd942d646d Update slf4j-api to 1.7.30 (#953) 2019-12-17 05:55:15 -06:00
Scala Steward
ead511a1ec Update scalacheck to 1.14.3 (#946) 2019-12-15 18:29:30 -06:00
Scala Steward
05af5c6b47 Update sbt to 1.3.5 (#945) 2019-12-15 18:26:56 -06:00
Chris Stewart
277b18720e Bump scalac version to 2.13.1 (#747)
* Bump scalac version to 2.13.1

* bump travis scalac version

* Bump scoverage to supposedly work with 2.13.1

* Bump other scalac versions

* upgrade mdoc plugin version

* Bump missing scala 2.13.1 version in travis
2019-12-12 09:00:15 -06:00
Scala Steward
0f3ecf6fe5 Update akka-actor, akka-stream, ... to 2.5.27 (#937) 2019-12-10 15:32:30 -06:00
Chris Stewart
388becbc6b 2019 12 10 scalatest 3.1.0 (#933)
* Update scalatest to 3.1.0

* Modify code to support scalatest 3.1.0
2019-12-10 09:12:47 -06:00
Chris Stewart
dd4787f2af 2019 11 30 key manager (#904)
* Segregate key manager from wallet

* More consistent naming in build.sbt, run scalafmt

* Add test case making sure we don't overwrite a mnemonic seed

* Add key-manager.md

* Fix compile issues with older scala versions

* Address code review
2019-12-04 07:43:29 -06:00
Chris Stewart
f4e43ec4d8 2019 11 28 cli native image doc (#903)
* Add documentation about how the cli can be built with a native image

* Finish rest of documentation on building command line client for bitcoin-s

* Add missing akka actor on walletServer classpath, add plugins to be able to build the walletServer as a standalone jar

* Add server.md

* Rename walletServer -> appServer

* Address code review, add missing main class in server project

* Address code review
2019-12-04 07:25:03 -06:00
Scala Steward
137eef0aea Update akka-http, akka-http-testkit to 10.1.11 (#908) 2019-12-03 10:07:02 -06:00
Scala Steward
e091040fa1 Update sbt to 1.3.4 (#889) 2019-11-24 09:01:49 -06:00
rorp
14d3878d01 Rescan RPC (#854)
* Rescan RPC

* cleanup

* fix optional args

* cleanup

* unit tests

* fix build error

* fix unit tests

* scalaMock

* cleanup

* more unit tests

* some more validation checks
2019-11-21 08:03:32 -06:00
Chris Stewart
c22512a6ce Bump micro pickle/json to 0.8.0 (#853) 2019-11-05 15:13:54 -06:00
Scala Steward
f7c8825a4c Update flyway-sbt to 6.0.7 (#844) 2019-11-01 09:13:12 -05:00
Scala Steward
5b7d29e2ed Update scalacheck to 1.14.2 (#849) 2019-11-01 09:06:44 -05:00
Scala Steward
f22906dfad Update slf4j-api to 1.7.29 (#848) 2019-11-01 06:11:03 -05:00
Scala Steward
a7064c7b57 Update sourcecode to 0.1.8 (#841) 2019-10-28 20:11:00 -05:00
Chris Stewart
19783ea546 Revert "Update sbt-mdoc to 1.3.6 (#831)" (#837)
This reverts commit ae9f662532.
2019-10-25 10:32:27 -05:00
Scala Steward
ae9f662532 Update sbt-mdoc to 1.3.6 (#831) 2019-10-25 08:50:35 -05:00
Scala Steward
a17a4d3673 Update sbt-bloop to 1.3.5 (#829) 2019-10-24 06:00:51 -05:00
Scala Steward
6f1db47e2c Update sttp:core to 1.7.2 (#808) 2019-10-22 14:25:45 -05:00
Scala Steward
179b66cede Update akka-actor, akka-stream, ... to 2.5.26 (#817) 2019-10-20 01:54:12 -05:00
Scala Steward
cda13ebbdf Update sbt to 1.3.3 (#809) 2019-10-14 13:56:58 -05:00
Scala Steward
04a22c415f Update typesafe:config to 1.4.0 (#803) 2019-10-13 19:30:09 -05:00
Scala Steward
c27e1136e2 Update sbt-ci-release to 1.4.31 (#754) 2019-10-07 06:12:16 -05:00
Scala Steward
5a502e4a47 Update sbt-bloop to 1.3.4 (#787) 2019-10-07 06:11:40 -05:00
Scala Steward
8aecdc280a Update sttp:core to 1.7.0 (#785) 2019-10-07 06:10:48 -05:00
Scala Steward
fd91fc37e2 Update sttp:core to 1.6.8 (#773) 2019-10-06 09:33:31 -05:00
Chris Stewart
e819baf0dd Reduce GCSTest by more, remove unused warnings when using scala console from sbt (#779) 2019-10-03 09:46:43 -05:00
Scala Steward
2fb9d163f3 Update sbt-bloop to 1.3.3 (#775) 2019-10-03 08:37:10 -05:00
Scala Steward
fe6d0e637b Update sbt to 1.3.2 (#752) 2019-09-22 17:21:07 -05:00
Scala Steward
42c1097a15 Update akka-http, akka-http-testkit to 10.1.10 (#751) 2019-09-22 16:11:21 -05:00
Scala Steward
ff703592d2 Update sbt-scalafmt to 2.0.5 (#744) 2019-09-17 03:45:36 -05:00
Scala Steward
ae62136b22 Update sbt-ci-release to 1.3.2 (#745) 2019-09-17 03:45:18 -05:00
Scala Steward
99bf83d852 Update sttp:core to 1.6.6 (#741) 2019-09-10 01:27:38 -05:00
Scala Steward
a979fd1b7e Update sbt-scalafmt to 2.0.4 (#738) 2019-09-06 08:13:18 -05:00
Chris Stewart
67ead0bc7e 2019 09 05 scalafmt update (#735)
* Update scalafmt to 2.0.1

* Scalafmt

In this commit we
1) Reconfigure the .scalafmt.conf file
2) Add a scalafmt binary (same version as specified in conf file)
3) Use said binary on CI to check that everything is formatted correctly

* Ran scalafmt

* Update scalafmt ignore

* Add scalafmt plugin to project/plugins.sbt, run it

* run scalafmt
2019-09-05 20:02:58 -05:00
Scala Steward
3aec12df6b Update sbt to 1.3.0 (#732) 2019-09-05 07:55:03 -05:00
Torkel Rogstad
f6ed565c14 Refactor sbt and make Eclair tests download bitcoind (#727) 2019-08-30 15:11:52 -05:00
Scala Steward
2ced3b1bf9 Update sttp:core to 1.6.4 (#664) 2019-08-26 13:54:56 +02:00
Scala Steward
7260789812 Update sbt-mdoc to 1.3.2 (#720) 2019-08-26 13:39:02 +02:00
Scala Steward
d50225d010 Update flyway-sbt to 6.0.0 (#719) 2019-08-23 18:44:42 -05:00
Torkel Rogstad
c2f37335b8 Bump Scala versions (#697)
* Bump Scala versions

Support Scala 2.12.9
and 2.13.0.

To make this easier, we delete the `scripts` project. Everything
that was in here was covered by content on the website. We also
delete the `doc` folder, as that was a remnant from when `scripts`
was called `doc`.

* Crib uPickle akka-http support while we wait for publish

* Fix compiler warnings

* Add note on test logging to contribution guide

* Reduce duplication in Blockchain implementation

* Use Scala 2.12 for website

* Introduce compat package object for collections converters

* Fix Either compiler warnings

* Add sync-chain and create-wallet docs from deleted scripts

* Fix rebase goofup
2019-08-23 13:53:00 -05:00
Scala Steward
b6a73d01ef Update flyway-sbt to 5.2.4 (#715) 2019-08-23 12:55:14 -05:00
Scala Steward
61fc6e16e3 Update sbt-native-packager to 1.4.0 (#711) 2019-08-22 09:56:34 -05:00
Scala Steward
ac73ba9414 Update akka-actor, akka-stream, ... to 2.5.25 (#700) 2019-08-20 10:46:21 -05:00
Scala Steward
0abc9a77cf Update slf4j-api to 1.7.28 (#687) 2019-08-10 10:50:48 -05:00
Scala Steward
42c36cc067 Update akka-actor, akka-stream, ... to 2.5.24 (#686) 2019-08-09 16:03:15 -05:00
Scala Steward
4d1b509ae7 Update slf4j-api to 1.7.27 (#677) 2019-08-06 07:13:32 -05:00
Torkel Rogstad
a76f61f97c Add configurable logging to data directory (#640)
* Add logging to data directory

In this commit we add the ability for the node, chain
and wallet projects (+ the server) to log to the users
data directory instead of whatever directory the
binaries was launched from. This is inherently a bit
more complicated than our previous setup, because
we need to read the user directory before we can create
loggers. As a result of this, some files/methods were
moved around, so the relevant app config could be
found in scope.

We also  introduce several logging categories that can be
tuned individually through user configuration. These logggers
are exposed both as traits that give a field `logger`, or
as methods that return the required logger.

* Add datadir configuration to AppConfig

In this commit we add support for AppConfig to pick up
the data directory configuration file. We also add
a section to the contributing guide on how to tune
logging levels.

* Pass data directories explicitly for configuration
2019-08-01 06:01:56 -05:00
cwaldron97
7183296b6b Killing Joda Dependency (#643)
Remove Joda dependency
2019-07-29 12:22:25 +02:00
Torkel Rogstad
dadf01493a Merge pull request #606 from scala-steward/update/sbt-native-packager-1.3.25
Update sbt-native-packager to 1.3.25
2019-07-18 15:50:27 +02:00
Torkel Rogstad
245a77b3db Merge pull request #637 from cwaldron97/2019-07-16-remove-bitcoinj-dep
Remove BitcoinJ from dependencies
2019-07-18 11:01:19 +02:00
cwaldron97
ab29c0cc8f more removal 2019-07-17 14:47:45 -05:00
Scala Steward
f3b92d33ce Update akka-http, akka-http-testkit to 10.1.9 (#639) 2019-07-17 13:17:58 -05:00
Scala Steward
f252a08f6b Update sbt-native-packager to 1.3.25 2019-07-17 15:31:16 +02:00
cwaldron97
87f6300082 started to remove bitcoinj deps 2019-07-16 15:12:38 -05:00
Torkel Rogstad
4b95383020 Merge pull request #612 from scala-steward/update/sbt-mdoc-1.3.1
Update sbt-mdoc to 1.3.1
2019-07-16 15:53:03 +02:00
Scala Steward
2b03665fd8 Update sbt-mdoc to 1.3.1 2019-07-16 15:33:28 +02:00
Scala Steward
7fd6078992 Update sbt-api-mappings to 3.0.0 2019-07-16 15:32:58 +02:00
Scala Steward
50e3a4747a Update sqlite-jdbc to 3.28.0 (#616) 2019-07-16 06:18:40 -05:00
Scala Steward
e8c334da87 Update sbt-bloop to 1.3.2 (#602) 2019-07-15 09:14:42 -05:00
Scala Steward
9c61820b90 Update native-lib-loader to 2.3.4 (#614) 2019-07-13 08:08:23 -05:00
Scala Steward
3d8314556a Update slick, slick-hikaricp to 3.3.2 (#607) 2019-07-13 08:06:47 -05:00
Scala Steward
c17d808a90 Update scodec-bits to 1.1.12 (#615) 2019-07-13 07:55:06 -05:00
Scala Steward
2eebe22b44 Update scalatest to 3.0.8 (#613) 2019-07-12 17:38:55 -05:00
Scala Steward
35092d6214 Update play-json to 2.7.4 (#605) 2019-07-12 17:38:20 -05:00
Torkel Rogstad
57fe05ebd2 Clean up build config
In this commit we:
1) Fix a bug where picklers.sbt did libraryDependencies := ...
    instead of libraryDependencies ++= .... This caused Scoverage
    to error, because a dependency it needed got removed.
2) Remove some unused sbt plugins and tasks/settings
3) Add more comments, that cleary explain what's happening.
2019-07-11 12:06:49 +02:00
Torkel Rogstad
30e6d7030f Somewhat dirty standalone server and CLI binary (#558)
* PoC bitcoin-s-cli

* Add CLI, Server sbt projects, remove Ammonite

In this commit we set up sbt configuration for
CLI, Server (in-work-name) and corresponding
test projects.

We also remove Ammonite shell from sbt, as that
isn't really being used. bloop console offers
the same functionality way more ergonimic.

* Move BitcoinSAppConfig into new server project

Server project depends on node, chain wand wallet
so this is a good time for introducing this class
into main sources. We also introduce
BitcoinSTestAppConfig in testkit, to replace the
functionality in BitcoinSAppConfig related to
tests.

* Type chain in blockchainresult

* MVP server setup for node, chain and wallet

* Extremely dirty CLI for interacting with server

* initial attempt at mimicking Bitcoin Core API

* WalletStorage: add method for checking for seed existance

* Check for seed existance on wallet startup

* Fix bug where MnemonicNotFound was not an error

* Segregate confirmed and unconfirmed balance methods

* Add error handling, improve formatting of CLI output

* Tweak build

Bump Sttp version, downgrade to uPickle 2.11 compat,
skip publish in cli-test and server-test

* Add CLI, server and picklers to root project
2019-07-10 06:33:17 -05:00
Torkel Rogstad
8fd9e0211c Add main method for running Mdoc
This allows working on the website without
opening sbt at all. bloop run docs -- --watch
compiles all Mdoc sources and outputs it into
the correct directory.
2019-07-03 16:04:17 +02:00
Chris Stewart
99ef45cce2 Add scalameter test dependency and sbt settings 2019-07-01 06:44:30 -05:00
Torkel Rogstad
435aef7b0b Pass bloom filter to SPV node (#514)
* Add getAddressInfo to Wallet API

* Add Bloom filter and event callbacks to SPV node

* Move wallet test trait to testkit

* Test for connecting SPV node with wallet

* Tune logging in SPV node

* Clean up BloomFilter

* Proper toString in inventory and inventorymessage

* Actually pass in callbacks to SPV node

* Fix rebase screwup and partially respond to code review

* Default to file based databases in tests

This is due to issues with deadlocks with
in-memory based databases. We need DBs
to stay alive between connections, but
not across tests.

In DB intensive chain validation tests we
use in-memory databases instead. This
seems like a reasonable tradeoff between
simplicity and speed.

* Make SpvNodeCallbacks contain sequence of functions within

* Make Bloom filter non-optional in SpvNode
2019-06-17 06:48:26 -05:00
Chris Stewart
e2ec692779 bump play-json version to 2.7.2 2019-06-11 08:47:34 -05:00
Chris Stewart
adfeff504f Bump various dependencies versions for our libraries 2019-06-11 06:39:28 -05:00
Torkel Rogstad
3c4157a698 Multi module configuration (#494)
* Replace AppConfig with more specific types

* Rework database configuration

In this commit we:

1) Introduce new database settings for all submodules,
and at the same time remove the singular datbase setting
for the entire project
2) Introduce a new method .initialize on all configs
that is responsible for creating needed directories,
databases and files
3) Introduce a new class BitcoinSAppConfig that wraps
configs for all three other subproject config. We
also provide implicit conversions that enable this
super-config to be passed in wherever a specialized
config is required.
4) Add more tests for our configuration setup.

* Add Ammonite to Docs deps
2019-06-05 10:48:15 -05:00
Chris Stewart
a3dd824e57 Node (#490)
* WIP: 2018 12 22 node project (#280)

* Add files from old spv node project

src compiling

test files compiling

ran scalafmt

Fix serializer tests

Get non networking test cases to work

WIP: Debug peermessagehandler

Update CRUD, remove all of the Actor craziness. Add DbManagement trait and unit test db

WIP: Rewroking PeerMessageHandler, create Peer, DataMessageHandler, PeerHandler

Reworking Client to handle all tcp messages and message alignment for bitcoin p2p messages

* Wip: Node refactor

* Create node test project, move all node tests into that project and move all generators for the node project into testkit

* Rework ClientTest to use testkit, start minimizing akka usage, implement connect(),isConnected(), disconnect(), isDisconnected() in PeerMessageReceiver

* Create Peer, PeerHandler, PeerMessageSender and PeerMessageReceiver

* update readme about status of node project (#359)

* Add flyway plugin to manage database schemas (#361)

* Add flyway plugin to manage database schemas

* Switch database driver to sqlite3 to be more portable, rework configs for sqlite3

* Set up sqlite database directories and files if they are not already created

* Add torkel's review

* Add chain, wallet, db-commons projects (#367)

* Add chain, wallet, db-commons projects

* Rework db creation logic if they db does not exist

* Add config logging to try to debug travis ci

* Pass explicit class loader for db config

* Remove duplicate call to dbConfig

* Make DbConfig.dbConfig a lazy val

* Remove noisy log

* Add scaladoc to DbConfig

* Switch dbConfig readme paragraphs

* Fix compile issues introduced during rebase onto master with rpc changes (#394)

* WIP: 2019 03 12 tip validation (#378)

* Implement blockchain handling data structures

Add TipValidation happy path

Add more test cases for TipValidation.checkNewTip for badPrevBlockHash and badPOW

Add overflow check, fix endianness bug for checking proof of work

Add pow transition check, refactor difficultyChangeInterval into chain params, add more tests

fix a few nits

Fix compile error, clean up unused import

Remove redundant files from node project

* Implement GetNextWorkRequrired/CalculateNextWorkRequired, move BlockHeaderDAOTest cases into chain project

* Add full POW change check in TipValidation, address code review nits

* Configure logging in chainTest, turn logging OFF in other test projects

* Address code review pt2

* Add coverage minimum for chain project (#398)

* Add coverage minimum for chain project

* Add first Blockchain.connectTip() unit test, switch to a in memory sqlite database for unit tests, starting using fixtures for BlockHeaderDAO in unit tests

* Add tests for ChainHandler.processNewHeader(), ChainHandler.getHeader(), Blockchain.connectTip(). Refactor redundant configurations being passed around excessivly

* Address code review, fix a flaky test in ClientTest.scala

* Test Fixtures (#403)

* Working test fixtures

* Removed ChainTestFixture trait in main code

* Composing Fixtures (#413)

* Downloaded over 9000 mainnet BlockHeaders into a json file

* Added new fixture with populated blockHeaderDAO

* Split writing to db into batches

* Rebased

* Simplified fixtures with makeFixture abstraction

* Added util functions for composing builders

* Add integration test between bitcoind <-> zmq <-> bitcoin-s-chain project. Test that we can relay a header from bitcoind over zmq into the bitcoin-s chain project. Redo ZmqConfig to use InetSocketAddress

* Address code review

* wip

* A compiling withBitcoindZmqChainHandler fixture

* Tests passing!

* Made blockHeaderDAO private

* Got 9000 new block headers from 562375 to 571375

* Added offset to populated blockHeaderDAO fixture

* Added scaladocs to fixture things

* Initial wallet: import UTXO and spend it (#391)

* Updates ExtKeyVersion with fromChainParams method

* Add equals to Address

* Update BIP44 classes

* Add ScriptType

* Initial work on wallet support

* Add foreign keys pragma for SQLite

* Add UTXO models and DAO

* Add addres P2WPKH generation and WIP for addUTXO

* Add logging config for wallet

* Add change address generation, proper-ish addUtxo and sendToAddress

* Address code review on #391

* Add empty AES passphrase invariant

* Add poor mans test fixtures

* Add listUtxos, listAddresses and getBalance to wallet API

* Use fixtures from chain project

* Fix CI test failures

* Fix broken up package path

* Updates bloop config for new projects (#424)

* Multi fixture file (#419)

* Created FixtureTag and ChainFixture

Used ChainFixture in BitcoinPowTest

Added implicit conversions for nice syntactic sugar

* Added documentation for multi-fixture

* Made defaultTag a val

* add a logback-test.xml to the wallet project (#433)

* Introduce AppConfig that combines ChainParams and DbConfig (#432)

* 2019 04 23 app config per project db config per project (#434)

* Add DB conf file resolution that works across projects

* Create applicatoin configurations for specific projects, rework DbConfig structures for individual projects. Force network to be mixed into DbConfig rather than DbConfig to be mixed into the network

* Add ammonite to db-commons, remove noisy logs

* remove mixin for DbConfig that required a NetworkDb. Now networkDb is just a field on 'DbConfig', this simplifies things downstream type wise when interacting with the projects AppConfig. This commit also removes a parameter from AppConfig, now only a DbConfig needs to be passed in, and we can derive the network and chain params from the DbConfig. The only exemption is UnitTestDbConfig as it is sometimes handy to specify a different network (i.e. mainnet) when testing

* Turn DbConfig objects to case objects, wrap those case objects in their parent type companion object

* remove cast in Wallet.scala

* Add EnhancedEither class for 2.11 compat (#437)

Add implicit conversion from Either to
2.11-compatible Either-wrapper. Also
remove trailing comma in WalletTestUtil
that breaks 2.11 build.

* Fix CI tests hanging (#438)

* Execute wallet tests sequentially to avoid SQLite deadlocks

* Refactor logback config to reduce duplication

* Use in-memory SQLite DB for unit tests

* Debug prints for DatabaseConfig.forConfig

* Fork JVMs in test to ensure proper in-memory DBs

* Pass in Akka config to Eclair tests, avoid cluttering Akka log output

* Don't fork JVM on node tests'

* Move things out of ChainUnitTest (#448)

* Move things out of ChainUnitTest

* Remove printlns

* 2019 04 29 client test (#449)

* Bump timeout on connect to node test

* Change from isConnected -> isInitialized to avoid the error trying to disconnect before we are fully initialized

* Wrote tests for POW difficulty change calculation and header processing (#429)

Fixed BitcoinPowTest

Rebased onto AppConfig code

Rewrote ChainHandler integration test

Made chain handler test synchronous

Fixed a couple test bugs

Implmented a more efficient getAncestorByHeight

Fixed ChainHandler integration test by using the correct starting conditions

Responded to code review

Responded to more code review

Deleted redundant Pow test

Made BlockHeaderDAO.getAncestorAtHeight use a List for its loop to improve performance

* WIP: Create ChainSync, BitcoindChainHandlerViaRpc, add simple ChainSyncTes… (#450)

* Create ChainSync, BitcoindChainHandlerViaRpc, add simple ChainSyncTest to sync one block from a external bitcoind instance via rpc

* Add check for having the best block hash in our chain state already

* Fix prev block hash to be empty hash if genesis block header

* BlockchainBuilder (#439)

* First commit for implementing a BlockchainBuilder

* use Builder rather than ReusableBuilder to be compatible with scala 2.11.x

* Decouple Blockchain & BlockHeaderDAO

* Rebase onto node, incorporate changes in #429

* Add more comments

* Reverse order of headers in builder

* rebase onot node branch, refactor apis

* DB: Add utility method for listing tables in a DB (#447)

* Node rebase (#458)

* Implement BIP32 path diffing

* Rebase node onto newest HD changes in master

* Fix 2.11 compile errors

* 2019 05 01 wallet ammonite scripts pt2 (#452)

* wip -- not finding testkit in doc worksheet

Wip -- classdef not found for create-wallet.sc

zmq bug

Clean up some logs

nest zmq start in bitcoindF

update jeromq to 0.5.2-SNAPSHOT to get rid of annoying log to stdout

Rebase onto node branch with new configs

Successfully running ammonite script create-wallet.sc

2019 05 01 wallet ammonite scripts pt2 (#25)

* Refactor Ammonite dep

* Add basic error handling in AmmoniteBridge

* Add very basic README for doc project

Fix compile issues after rebasing onto master

Add code to sync our wallet code with bitcoind after creating a tx

* refactor ZMQSubscriber to _hopefully_ avoid hanging when we call context.term(). We do this by closing the socket before calling context.term() and using socket.setLinger()

* Update doc/src/main/scala/org/bitcoins/doc/wallet/create-wallet.sc

Co-Authored-By: Christewart <stewart.chris1234@gmail.com>

* 2019 05 05 sync chain (#460)

* Add code to sync our wallet code with bitcoind after creating a tx

Add script to illustrate how the chain persisted and how to sync against a running bitcoind instance on regtest

* fix bug relating to subtraction operator not being communative in Pow.getNextWorkRequired(). This kept us from being able to switch proof of work intervals correctly

* rename script from persist-chain.sc -> sync-chain.sc

* fix 2.11.x compile issues

* Refactor chain, node, wallet config (#463)

* Refactor chain, node, wallet config

Get rid of NetworkDb, DbConfig
Add proper structure to conf system,
moving everything under the bitcoin-s
root key.

* Remove Scalacheck from node project

* Add doc on configuration

* Add override feature to AppConfig

* Address code review in #463

* Throw if default data dir is used in tests, add Scaladoc to AppConfig

* Add explanations for withOverrides, link to configuration.md from AppConfig

* Fix compile error

* Moves chain fixtures to testkit project (#475)

reset node files

* Store encrypted mnemonic to disk (#462)

* Add WalletStorage object

* Add encrypted mnemonic storage, locked wallet

Add lock and unlock operations to wallet.
Separate between locked and unlock wallet.

* Handle non-existant seed file

* Respond to code review from Chris

* Use val instead of import

* Add doc on how mnemonics are encrypted/stored

* 2019 05 15 spv sync headers (#479)

* Implement SpvNode skeleton, create NodeUnitTest and move it to the testkit

* Implement test case to sync a header via spv into bitcoin-s

* Fix compiler errors

* Make node project Main runnable (#26)

* Add logging configuration to node project

* Make default config workable in non-test environments

* Add more logging of config in BH DAO and AppConfig

* Make Peer id optional

* Make node Main.scala runnable

* Implement Main.scala to sync with a locally running bitcoind instance. You can now run with 'bloop run node' and sync the node if you adjust the parameters inside of Main.scala. This also reworks the structure of 'AppConfig'. It turns the *AppConfig into a case class intead of case objects. This allows us to pass custom configs into those case classes

* Address code review from torkel

* Reintroduce withOverrides (#29)

* Turn off chain validation logs

* Make datadir a parameter to bitcoind config rather than having it implicitly written to the bitcoin.conf file. This was a difference that was occurring in the node branch which had a parameter for the datadir and master which was implicitly writing it to bitcoin.conf

* Add ability to overrwrite conf file except in the case of overwriting the DEFAULT_DATADIR & DEFAULT_CONF

* remove extra Bitcoind.stopServers in WalletIntegrationTest
2019-06-04 09:53:00 -05:00
Chris Stewart
5256327a56 Downgrade sbt-api-mappings plugin to try and get it to work with mac osx (#486)
* Downgrade sbt-api-mappings plugin to try and get it to work with mac osx

* Change version to 2.1.0
2019-05-30 13:38:36 -05:00
Chris Stewart
8bede3fddc Give sbt-api-mappings plugin a concrete version, fix compiler warnings with unused imports (#485) 2019-05-30 09:47:21 -05:00
Torkel Rogstad
6bc6378f96 WIP: Docusaurus website (#465)
* Docs: Introduce new Docusaurus-based website

This commit is the result of running
npx docusaurus-init, and nothing more.
Further changes will happen on top of
this, to make it easier to review changes
and update to newer versions of Docusaurus
in the future.

* WIP: Add Bitcoin-S website

Change the default Docusaurus template to a custom website. Goes
off of existing documentation, and moves it into the new docs and
website directories. Deletes some unused files, such as
BUILD_README.md

* Initial mdoc support

* Add Scaladoc to website

* Add SVG assets

* Change colors, flesh out pages, correct Scaladoc links

* Rename doc project to scripts, move security doc to website

* Add copy buttons to website code snippets

* Add doc and tasks for publishing website

* Refactor how paths get copied after generating Scaladocs

* Add Get Started button

* Replace bitcoin-s logo with white text

* Add Montserrat font for headers

* flesh out user showcase and landing page

* Change Scaladoc URL to bitcoins package
2019-05-14 18:05:14 -05:00
Chris Stewart
21eddd58fb 2019 05 04 sbt ci release (#464)
* Add sbt-ci-release-plugin

* Adjust travis ci file to account for sbt-ci-release
2019-05-09 11:37:05 -05:00
Chris Stewart
e97fe626d6 Add script to connect to a local/remote running bitcoind instance and print the balance of the wallet (#459)
Rm hardcoded username and env var for pw
2019-05-06 09:07:17 -05:00
Chris Stewart
e5f9885312 Rename root project to 'bitcoins' (#420) 2019-04-15 14:38:25 -05:00
Torkel Rogstad
db15731b93 Add Bloop config, documentation (#412) 2019-04-15 13:08:51 -05:00
Chris Stewart
4572a9e9c2 Bump sbt version to 1.2.8 (#411) 2019-04-12 06:00:53 -05:00
Torkel Rogstad
fb16d6b200 Add support for Bitcoin Core 0.17 (#384) 2019-03-26 12:41:05 -05:00
Torkel Rogstad
1ffeb73cd8 Fix Ammonite compile errors (#368) 2019-03-01 06:36:13 -06:00
Chris Stewart
c78ab5b860 Bump dependencies (#366) 2019-02-28 07:24:10 -06:00
Torkel Rogstad
db5a7254b9 BIP39 support (#353)
* Adds SHA256 hashing of BitVector

* Add BIP39 support
2019-02-28 06:13:37 -06:00
Torkel Rogstad
bad37db6fa Adds Ammonite REPL in test scope (#323) 2019-02-26 06:16:12 -06:00
Nadav Kohen
8a491022fa Better test error messages (#336)
* Improves error messages in with testkit

* Added the changes to BitcoindRpcTestUtil and EclairRpcTestUtil

* Responded to code review
2019-02-18 19:28:54 -06:00
Chris Stewart
0c4556a301 Put tests for bitcoind-rpc and eclair-rpc into a separate project to … (#341)
* Put tests for bitcoind-rpc and eclair-rpc into a separate project to get rid of circular dependency

* Modify travis yml file to get rid of all testkit stuff

* rename rpc project to bitcoind-rpc project

* Add bitcoind-rpc test cases that got deleted accidentally

* Add more files missing from bitcoind-rpc-test

* Remove circular deps part on CONTRIBUTING.md
2019-02-18 09:57:18 -06:00
Chris Stewart
b44c7af53d Make start methods return Future[Unit] (#328)
WIP: Refactoring EclairTestUtil to use Futures

Finished refactor EclairTestUtil to use futures

Address code review

fix async bug in chan opening

Change snapshot version to something that should compile
2019-02-07 19:58:18 -06:00
Chris Stewart
6dce938f06 rm usage of getSimpleName, as it breaks logback logging schemes (#322) 2019-02-03 10:51:31 -06:00
Torkel Rogstad
8a203e881f Fixes conversion bug when sending with Eclair RPC (#318)
* Improved toString for LnCurrencyUnit

* Test for amount equality in RPC send methods

* Fix conversion bug in Eclair RPC client

* Version bump
2019-02-01 09:13:25 -06:00
Chris Stewart
4fa376eac9 Make timestamp a lazy val outside of versioning code (#317)
* Make timestamp a lazy val outside of versioning code

* revert bitcoin-s snapshot to something that is published
2019-01-30 04:38:15 -06:00
Torkel Rogstad
8bbd4e0631 Adds audit RPC call + test (#314) 2019-01-28 18:15:02 -06:00
Chris Stewart
8ff839c2a6 Add sbt-git plugin, reformat snapshot versioning scheme (#309) 2019-01-23 10:23:05 -06:00
Torkel Rogstad
e068382701 findroute RPC call tests/types (#301)
* Improved toString methdos

* Eclair RPC for findroute

* ConfigUtil for getStringOrElse

* Scaladoc

* Version bump

* Typed ChannelDesc a and b fields
2019-01-23 08:45:46 -06:00
Torkel Rogstad
dec5bf0c14 Scaladoc (#296)
* Scaladoc formatting

* Adds sbt-api-mappings plugin
2019-01-21 06:36:39 -06:00
Torkel Rogstad
8180a22377 Adds Bitcoin-S static site (#299) 2019-01-18 06:34:27 -06:00
Torkel Rogstad
fd2c39abff Improves types for Eclair RPC (#298)
* Improves types for Eclair RPC

* Version bump

* Adds note in README.md on where artifacts are published
2019-01-18 06:34:08 -06:00
Chris Stewart
ab95053af8 version 0.0.3 (#290)
* version 0.0.3

* Fix cross compile issues so we can now compile and publish a dependency for the scala 2.11 series

scalafmt

* bump versions on readme, try to fix scoverage crossversion issue

* Downgrade scoverage to try and get it to work with ci

* Tinker with scoverage versions

* Add suggestion from scoverage people to exclude secp256k1jni from build coverage
2019-01-10 09:07:18 -06:00
Chris Stewart
268e235b4d Add secp256k1jni readme, start working main project readme, move old readme to core/README.md (#276)
Add documentation for TxBuilder

Try to fix links on core/README.md

add readme badges for bintray

Nits and formatting of README (#23)

ran scalafmt, fixed format in secp readme
2019-01-08 09:29:06 -06:00
Chris Stewart
a2504ba6d7 Bump version to 0.0.3-SNAPSHOT 2019-01-07 19:37:42 -06:00
Torkel Rogstad
1301336231 Adds typesafe-config parsing of bitcoin.conf (#279)
* Adds typesafe-config parsing of bitcoin.conf

Adds ZmqConfig trait

* Only add datadir if not present

* Use old and new config settings
2019-01-07 09:30:59 -06:00
Chris Stewart
5bd3395280 Add ability to publish snapshots for bitcoin-s (#281) 2019-01-05 09:40:51 -06:00
Chris Stewart
497a4d7274 2018 12 14 rm gen dup test files (#269)
* remove duplicate files in rpc,eclair-rpc and replace them with publish testkit dep

remove gen package, fix bugs in testkit generators that weren't properly copied for the gen project

* Adding bintray resolver, fixing bug in bech32 address generator where exception was being thrown because an unassigned witness spk was hash was being called
2018-12-15 10:09:52 -06:00
Chris Stewart
ad3f935e4e WIP: Add ability to publish to bintray, take on the org.scijava native-lib… (#268)
* Add ability to publish to bintray, take on the org.scijava native-lib-loader dependenency so we can bundle secp256k1 natively in a jar file and publish. This dependency will allow us to link the correct secp256k1 version dependending on the os and arch in the future

* Add sbt-pgp plugin to sign binaries, modify project names to all have the 'bitcoin-s-' prefix.

* Adding linux 32 bit secp256k1 natives to secp256k1jni project

* Add mising linux_64 binaries

* remove unused symlinks
2018-12-14 13:09:53 -06:00
Chris Stewart
44bccce602 Add hard coded secp256k1 files for linux x86_64 bit arch (#263)
* Add hard coded secp256k1 files for linux x86_64 bit arch

* Add binary files that ignored in .gitignore
2018-12-11 15:38:17 -05:00
Nadav Kohen
4b8cebf3a4 Added scalafmt and ran it (#264) 2018-12-09 14:43:31 -05:00
Chris Stewart
18986b620d Lightning Network (#256)
* Implementation of LnCurrencyUnit

Fix unary and unneeded comments.

Refactor and change arithmetic to use PicoBitcoins.

Add property based testing for LnCurrencyUnits

Refactor LnCurrencyUnits after code review

Fix case and change LnPolicy to val

Remove division and add Unit tests

* Add additional unit tests and deserialization

* WIP: Implement LnHumanReadablePart (#190)

* Initial Implementation of LnHumanReadablePart

* Add unit tests and improve deserialization from string

* Refactor LnParams and LnHrp. Add requirements for instantiating LnHrp.

* Clean up and re-organize things

Re-working LnHumanReadablePart.fromString

Fix unnecessary pattern match

Removing test case

* Created eclairRpc project (#193)

Added getinfo functionality

Added connect functionality

Added most of the rpcs

Added send and checkpayment functionality

Added updaterelayfee functionality

Fixed compile errors

Ran scalafmt

Added DaemonInstance and start/stop methods

Added TestUtil

Added open test

Fixed typo in allUpdates

Fixed ChannelResult

Add eclair prefix to rpc stuff

open channel unit test passing

Adding instructions to grab default eclair in build

Add zmq config to bitcoin.conf

rename test log files, bump timeouts on connections

Add eclair-rpc README, rework some RpcUtil/TestUtil stuff for async

fixing bug in precious block, addressing code review

Address more code review comments

* Add NodeId, NodeUri, ChannelId (#196)

refactor json serializing methods to SerializerUtil, add more types

* Adding LnCurrencyUnit types to rpc api, fixing bug where eclair tests were not binding to a random port for zmq (#198)

Remove start stuff

* Adding more rpc tests, testing open, payment over channel, and closing of the channel (#199)

Add checkpayment tests

Address code review, create EclairTestUtil.createNodPair

* Two way eclair transactions sanity test (#200)

* Added a test for sending payments in both directions

* Updated travis bitcoin core version

* Initial LnInvoice Implementation (#194)

Start typing some ln invoice stuff

Add support for Fallback Address encoding

Part 1: Breaking out Bech32 specific functions into a util class, don't embed in Bech32Address

re-naming fromBase8ToBase5 -> from8BitTo5bit

Part 1: Breaking out Bech32 specific functions into a util class, don't embed in Bech32Address

rework ln invoices tags

fix more method names in Bech32

Rename ScriptPubKeyTag -> NodeIdTag

All invoice tags tests passing except weird serialization order one

Address code review, add some more comments

rename 'LnInvoiceTags' -> 'LnInvoiceTaggedFields'

create a UInt5 type to represent all of the bech32 data structures

Passing all serialization in the BOLT11 examples

First cut at deserialization

* Adding bitcoin-s types to the eclair-rpc, fixing bug with decoding numbers, refactoring more things (#204)

* Switch bech32 p2wpkh hash from RipdeMd160 -> Sha256Hash160Digest (#206)

* Add testkit project / dependency (#209)

fix core-gen build.sbt name

* add correct dependencies to testkit (#210)

* Get dep name right (#211)

* Add serialization symmetry property for LnInvoice, fixing various bugs in LnInvoice data structures, adding generators for various LnInvoice data structures (#217)

* Reworking AuthCredentials and Instances so that we can read from config files (#218)

add core files that were missing

* Reworking a lot of testkit data structures to be more helpful for testing (#219)

Add missing EclairApi file

remove noisy log

* Rebase onto master, fix testkit compile issues

* Simplify LnCurrencyUnit, add MilliSatoshis, refactor EclairRpc to use… (#226)

* Simplify LnCurrencyUnit, add MilliSatoshis, refactor EclairRpc to use MilliSatoshis

* Add some helper functions around millisatoshis for comparing them to other things

* more tests / helper methods, at generator for millisatoshis

* Fix typo

* Fix comparison operators for millisatoshis, add Writes for MilliSatos… (#227)

* Fix comparison operators for millisatoshis, add Writes for MilliSatoshis in JsonWriters

* re-add comparison operators to LnCurrencyUnit for convinience

* Add millisatoshi reads (#228)

* Updating version of eclair to https://github.com/ACINQ/eclair/releases/download/v0.2-beta8/eclair-node-0.2-beta8-52821b8.jar (#229)

* Derive nodeId from ln invoice signature, move nodeid case class into … (#230)

* Derive nodeId from ln invoice signature, move nodeid case class into the core project

* Add missing assert

* Fix null pointer exception that could occurred during requiring the invoice's signature to valid. This could occurr if a user tried to construct an invoice with an invalid signature (#233)

* Turn down logging / remove logging (#235)

* Cleaned up eclair conf (#237)

* Cleaned up eclair conf

* Added test for bad auth and Reads for LnInvoice

* WIP: rebase onto master with new compiler opts

fix more compiler warnings with testkit

* fix new compiler warnings for scalac 2.12.x on ln (#253)

* fix new compiler warnings for scalac 2.12.x on ln

* fix missing p2wpkhoutput in rawoutput testkit/CreditingTxGen.scala

* First cut at code review for the ln branch (#258)

Fix bug in parsing the LnTagPrefix.CltvExpiry, add properties that check if the NodeIdTag is given explicitly to the invoice

remove dumb invariants

revert version

* 2018 12 4 ln code review rd2 (#259)

* Amend EclairRpc test case for confirming that channel is closed

* Add final check to test case to make sure the bitcoind wallet received funds when closing channel

* Address Torkel's code review

* Addresses some review on #256 (#260)

* Docstring cleanup, small nits

* Refactors some redudant data, nested if => switch

* Fixes SO error by reversing remowal of `new`

* Fixes a couple of bugs

* map.get instead of list.find

* StringBuilder in HRP

* Rework NetworkParam to LnParam

* Cleanup

* Renames file to match trait/object name

* Docstring cleanup, pure formatting

* Simplifies a few expressions, doesn't change semantics

* Adds overloaded findRoute method instead of Either[NodeId, LnInvoice]

* Eclair cleanup

* Address concerns from Chris

* Type annotation to match case

* Address nadav's code review
2018-12-08 11:03:24 -05:00
Chris Stewart
49eec08393 Bump plugin versions, remove scalariform (#255)
* Bump plugin versions, remove scalariform

* Bump sbt version to 1.2.4
2018-11-28 14:45:49 -05:00
Chris Stewart
dcb566526d Add BlockBench and benchmark README 2018-11-23 08:38:30 -05:00
Chris Stewart
718ad50427 Bump travis ci scalav
Add scalav 2.12.7 to the travis ci matrix

Add more jdk versions

explicitly set scalav when starting sbt for travis

Bump junit interface for secp256k1 tests

remove openjdk/oraclejdk 9 for now
2018-11-23 07:55:37 -05:00
Chris Stewart
13249437c0 Add qualifers to dependencies to download sources (#240) 2018-11-11 17:22:22 -05:00
Chris Stewart
a01df3f6f0 Bump versions of dependencies (#224) 2018-10-26 10:06:49 -04:00
Chris Stewart
42b0600051 bump sbt to 1.1.6, bump scalac version to 2.11.12
Adding compilerOpts, adding commonSettings across projects
2018-08-26 12:44:25 -05:00
Daniel James
5b5852bf72 scodec
Migration to scodec

Src is compiling

tests compiling

All unit tests passing now

fix compiler issue in ScriptParser

bump timeout to run on travis ci

Fixing two unit tests that had types failing

Turn down excessive logging

Uncomment rpc tests

fixing nits
2018-08-09 21:32:17 -05:00
nkohen
a55befa995 Ran scalafmt 2018-06-27 17:43:48 -05:00
nkohen
8ee3aab58a added travis integration, added awaitSync to createNodePair, cleaned up RpcAddressReads and TransactionInputReads, added ScripSignatureReads, made sure all tests run all assertions as intended 2018-06-25 13:38:40 -05:00
Nadav Kohen
1675051c35 Created rpc project and added getNewAddress endpoint 2018-06-25 09:56:37 -05:00
Daniel James
0309675528 Refactor multi-module build
- separate Java source copied from libsecp256k1 into separate module
- split main module into core core-gen core-test
  - generators can be published separated to core code for use in
    3rd-party tests
- code coverage needs to be aggregated
2018-05-02 16:18:01 -04:00
Chris Stewart
11e365a511 Init for zmq, successfully parsing blocks from bitcoind
MVP working for zmq notifications

removing logging, making block header generators less likely to fail

subscribing earlier in zmq life cycle

refactoring some zmq stuff to remove excess Futures

Adding error condition to processMsg loop

changing error message in processMsg loop

refactoring ZMQSubscriber api to just take in Seq[Byte] functions

cleaning up nits, adding documentation, list shortcomings of current iteration
2018-04-25 10:29:59 -05:00
mecampbellsoup
8f23b963c9 Bump SBT version to 0.13.17 2018-03-27 14:03:56 -04:00
mecampbellsoup
c6cac3eae9 Reformatting using scalariform 2018-03-26 12:27:23 -04:00
Chris Stewart
905b3a53ae Updating sbt assembly plugin to 0.14.5
removing discard strategy for library.properties
2017-08-21 15:09:57 -05:00
Takashi Kawachi
294d13a55e Specify sbt version to 0.13.13 2017-02-16 10:18:57 +09:00
Tom McCabe
f2c00a3a3c add travis/coverall widgets to README, integrate coveralls 2016-05-07 11:29:38 -05:00
Chris Stewart
73cbf4db33 Adding BitcoinSUtil that mirrors ScalacoinUtil - ScalacoinUtil will be removed in the future 2016-02-26 12:34:58 -06:00
Chris Stewart
77471ed783 Adding plugins.sbt file 2016-01-04 15:10:19 -06:00