Commit Graph

69 Commits

Author SHA1 Message Date
carla
41355756a1
channeldb: add balance at height lookup
Add a balance at height lookup function which can be used to
obtain local/remote balance at a given height. The current in memory
commits and revocation log are used to source this information.
2020-03-19 13:20:17 +02:00
Olaoluwa Osuntokun
a4e39906b1
build: silence new linter errors, tidy modules
The explicit `bbolt` dep is gone, as we depend on `kvdb`, which is
actually `walletdb`, which has its own module that defines the proper
`bbolt` version.
2020-03-18 19:35:29 -07:00
Olaoluwa Osuntokun
f0911765af
channeldb: convert to uniformly use new kvdb abstractions
In this commit, we migrate all the code in `channeldb` to only reference
the new `kvdb` package rather than `bbolt` directly.

In many instances, we need to add two version to fetch a bucket as both
read and write when needed. As an example, we add a new
`fetchChanBucketRw` function. This function is identical to
`fetchChanBucket`, but it will be used to fetch the main channel bucket
for all _write_ transactions. We need a new method as you can pass a
write transaction where a read is accepted, but not the other way around
due to the stronger typing of the new `kvdb` package.
2020-03-18 19:34:49 -07:00
Olaoluwa Osuntokun
1589810f07
build: update to x/crypto version w/o broken poly1305 arm assembly
In this commit, we update to a new version of `x/crypto` that drops
broken ARM assembly that can cause a segfault in systems like raspis.
The broken assembly was removed in this commit to the runtime:
8b774103d3.

Fixes #4052.
2020-03-09 12:29:43 -07:00
Olaoluwa Osuntokun
d091f24316
build: update to latest btcwallet version with rescan addr fix
In this commit, we update to the latest `btcwallet` version that
includes a fix for how we perform rescans. Before this commit, the
wallet would load ALL the created keys into the wallet to perform a
rescan. This is unnecessary, as many of the keys we create are actually
used in contracts, so the wallet can't spend them directly anyway.

For neutrino nodes, this would've caused them to attempt o match more
items in the filter than necessary, possibly resulting in an increased
number of false positive block fetches.
2020-02-18 17:12:32 -08:00
Oliver Gugger
1cb52491a3
mod: update btcwallet dependency 2020-01-24 14:02:39 +01:00
Olaoluwa Osuntokun
e96e011520
build: update to latest lightning-onion version 2020-01-07 16:11:33 -08:00
Conner Fromknecht
8f5d78c875
build+lncli: default to hex encoding for byte slices
This commit swaps out golang/protobuf/jsonpb for a custom variant that
by default prints byte slices as hex, which is more useful for our
setting. Some existing wrapper structs are removed as they can now be
printed directly with the new jsonpb.

!!! NOTE !!!

This commit introduces a breaking change to lncli listinvoices since
payment hashes and preimages will now be printed in hex instead of
base64.
2019-12-20 01:05:08 -08:00
Joost Jager
31b2c22cf5
routing: check for invalid routes 2019-12-16 14:53:45 +01:00
Olaoluwa Osuntokun
a5519d1af1
build: update go.mod to use queue/v1.0.2 2019-12-11 19:06:48 -08:00
Olaoluwa Osuntokun
887be8e9a9
Merge pull request #3713 from guggero/extract-gen-cert-pair
cert: extract common certificate related functions into own package
2019-11-18 17:11:48 -08:00
Oliver Gugger
6a807b2d4c
mod: use tagged version of cert package 2019-11-18 09:51:30 +01:00
Oliver Gugger
b145378a4d
cert: create independent go modules 2019-11-18 09:44:55 +01:00
Wilmer Paulino
b33a229457
build: bump btcsuite and neutrino dependencies to latest tagged versions
The btcwallet update includes some edge-case wallet bug fixes and an
optimization on ZMQ connections for bitcoind backends.

The btcd update allows for compatibility with bitcoind v0.19.0 backends.
2019-11-12 20:34:35 -08:00
Johan T. Halseth
a8837478f4
mod: update neutrino dep 2019-11-11 10:45:09 +01:00
Oliver Gugger
b6b57d1c00
proto: update to grpc-gateway v1.8.6 2019-10-31 09:13:33 +01:00
Johan T. Halseth
5cbef663e4
go mod: update btcd+neutrino+btcwallet 2019-10-15 10:31:23 +02:00
Wilmer Paulino
194a9dea81
multi: support sync freelist option within btcwallet 2019-10-04 12:19:40 -04:00
Johan T. Halseth
96ebce6842
go mod: update btcwallet dependency
We update to a new version of btcwallet where specific errors
(ErrDoubleSpend and ErrReplacement) will be returned from
PublishTransaction.
2019-09-25 08:03:21 +02:00
Oliver Gugger
c01f9f043d
lnd: pin go version to 1.12 in go.mod 2019-09-24 09:18:21 +02:00
Olaoluwa Osuntokun
484e6df6a7 build: update to latest version of neutrino
In this commit, we update to the latest version of neutrino with a
series of important bug fixes in the core rescan logic.
2019-09-18 20:29:51 -07:00
Olaoluwa Osuntokun
9f1c6e9394
build: update to latest version of lightning-onion 2019-09-11 05:57:08 -07:00
Olaoluwa Osuntokun
5fc003d6a1
build: update to latest versions of btcwallet and neutrino 2019-09-11 05:57:05 -07:00
Olaoluwa Osuntokun
a4e2bb47d2 build: update travis to build against go 1.13
In this commit, we update Travis to start building against the newly
released go 1.13. Additionally, we'll now utilize the new `trimpath` to
the `go build` and `go install` commands. This new flag serves to remove
all file system paths from the compiled Go executable, which will make
our binaries more reproducible.
2019-09-11 05:54:33 -07:00
Olaoluwa Osuntokun
ac6f56566e build: point to latest lightning-onion w/ EOB support 2019-08-22 18:52:53 -07:00
Olaoluwa Osuntokun
69c9e2b732
Merge pull request #3278 from Crypt-iQ/bbolt_options_0707
channeldb: specify freelist bbolt options by default
2019-07-30 16:52:28 -07:00
Olaoluwa Osuntokun
9b3b333707
build: update neutrino to version w/ stall fix
In this commit, we update neutrino to a new version that has a fix for a
possible sync stall that can occur if a response that we believe has
timed out, later comes back from the source peer.
2019-07-25 16:08:52 -07:00
Olaoluwa Osuntokun
5d57ba6393
build: update to neutrino version w/ shutdown fix 2019-07-24 17:43:31 -07:00
Olaoluwa Osuntokun
97bbc492c4
build: update neutrino to latest version
In this commit, we update to the latest version of Neutrino which
includes fixes to the syncing logic.
2019-07-22 16:37:41 -07:00
Wilmer Paulino
4faed1deff
build: update btcwallet and zmq dependencies
* We address an issue where we would unnecessarily time out bitcoind ZMQ
  connections if there are no messages to be read. This would cause
  connections to be torn down, which would then trigger the reconnection
  logic and prevent us from detecting this issue.

* A new sanity check within the wallet is done to prevent adding
  unconfirmed transactions that the wallet has already recognized as
  confirmed.
2019-07-12 02:40:16 -07:00
Joost Jager
2b47632b26
htlcswitch+routing+routerrpc: return error source as index 2019-07-11 10:37:26 +02:00
Wilmer Paulino
383dd8111b
build: use github mirror of bsaes dependency
This allows us to not depend on external hosts for third-party
dependencies other than the standard hosts: github.com,
google.golang.org, and gopkg.in.
2019-07-10 11:52:57 -07:00
nsa
4fd78926d4 build: update bbolt to v1.3.3 with panic rollback fix
This commit updates the bbolt dependency to v1.3.3 so that we
can use the NoFreelistSync option without triggering a panic
in case a rollback occurs.
2019-07-08 18:35:43 -04:00
Olaoluwa Osuntokun
04512a1a93
build: update to latest btcd with rescan optimization 2019-06-28 17:39:32 -07:00
Olaoluwa Osuntokun
dad1ed2d71
build: update to latest neutrino version w/ flake fix 2019-06-28 17:15:55 -07:00
Olaoluwa Osuntokun
998cf42ac3
build: update to btcwallet version w/ btcd rescan optimization 2019-06-28 17:02:02 -07:00
Olaoluwa Osuntokun
3694f1b306
build: update to versino of neutrino w/ deadlock fix 2019-06-20 17:00:33 -07:00
Olaoluwa Osuntokun
a25c06bc8f
build: update btcwallet to version with seed restore fix
Fixes #3223.
2019-06-20 16:34:47 -07:00
Olaoluwa Osuntokun
4203542154
btcwallet: update to btcwallet version w/ SendOutputs dust fix 2019-06-18 19:55:26 -07:00
Conner Fromknecht
4d260f7452
Merge pull request #3203 from Roasbeef/update-btcd
build: update btcd version to latest w/ rbf support
2019-06-14 12:55:38 -07:00
Wilmer Paulino
7b7a87cf04
build: update btcwallet dependency to include initial sync improvements 2019-06-14 01:36:04 -07:00
Olaoluwa Osuntokun
290fd0f14f
build: update btcd version to latest w/ rbf support 2019-06-13 18:41:50 -07:00
Valentine Wallace
1f6485e7e9
monitoring: add monitoring package for Prometheus metric exports. 2019-06-11 11:26:05 -07:00
Valentine Wallace
818dbb9e9b go.mod: update to latest neutrino to enable asserting filter hash. 2019-06-06 16:05:09 -07:00
Olaoluwa Osuntokun
9523be7170
Merge pull request #3114 from Roasbeef/btcwallet-18-fix-deadlock
build: update btcd to latest version, btcwallet to bitcoind 0.18 compliant version
2019-05-27 15:30:33 -07:00
Johan T. Halseth
ea50502a79
go mod: update to latest neutrino dep 2019-05-24 12:41:31 +02:00
Olaoluwa Osuntokun
18b9e1dd16
build: update to latest btcwallet+btcd 2019-05-23 17:38:43 -07:00
Joost Jager
9a4c0d5699
lnrpc: upgrade to protobuf v1.3.1
This commit upgrades the protobuf version. Compared to the previous
v1.2.0 it generates smaller diffs in generated code. This change was
introduced in:

fffb0f7828
2019-05-20 15:35:14 +02:00
Olaoluwa Osuntokun
cba803b856 build: update to latest lightning-onion version 2019-04-30 20:13:15 -07:00
Johan T. Halseth
ef6c2f5adc
mod: update to latest btcwallet, btcd, btcutil, neutrino
Resolves a crash when using neutrino backend, and a bugfix for filter
matchin.
2019-04-26 10:17:02 +02:00