Commit graph

16 commits

Author SHA1 Message Date
Valentine Wallace
87126b391b
ChannelManager+Router++ Logger Arc --> Deref
This caused a bunch of cascading changes, including
passing loggers down to Channels in function calls
rather than having each Channel have a pointer to the
ChannelManager's Logger (which was a circular reference).
Other structs that the Channel had passed its Logger to also
had their loggers removed. Other newly unused Loggers were
also removed, especially when keeping them would've caused
a bunch of extra test changes to be necessary, e.g. with
the ChainWatchInterfaceUtil's Logger.
2020-05-17 12:33:43 -04:00
Dr. Maxim Orlovsky
27079e04d7 Adopting new bitcoin hash types and crate version 2020-04-29 12:37:46 +02:00
Dr. Maxim Orlovsky
4909d3cd6a Bitcoin deps refactoring (BDR): Linearizing bitcoin_hash deps 2020-04-28 16:17:42 +02:00
User
37f0c1af79 Add tests for handling channel announcements 2020-04-11 08:30:21 -04:00
Valentine Wallace
d768cc234e
multi: update ChannelManager tx broadcaster from Arc to Deref 2020-02-25 20:12:25 -05:00
Matt Corallo
2f346414ad
Merge pull request #502 from rloomba/rloomba/add_unregister_listener
[chaininterface] Add ability for BlockNotifier to unregister listeners
2020-02-19 19:02:47 +00:00
Matt Corallo
662f13a858 Test that we don't forget to track any outputs at monitor-load
This tests, after each functional test, that if we serialize and
reload all of our ChannelMonitors we end up tracking the same set
of outputs as before.
2020-02-18 18:20:33 -05:00
Ryan Loomba
7d6234662c add functionality for BlockNotifier to unregister a previously registered listener, in order to no longer receive events 2020-02-17 21:33:56 -08:00
Matt Corallo
ca4c970467 Clarify rescan rules for block_connected somewhat 2020-02-13 12:56:13 -05:00
Valentine Wallace
4833d1acf9 Update ChannelManager's ChannelMonitor Arc to be a Deref
Additional changes:
* Update fuzz crate to match ChannelManager's new API
* Update lightning-net-tokio library to match ChannelManager's new ChannelMonitor Deref API
* Update tests to match ChannelManager's new ChannelMonitor Deref API
2020-01-25 14:39:52 -05:00
Matt Corallo
d6382f5ed4 Remove unused lifetimes.
f71518365f added a series of lifetimes
which were required for an earlier version of the patch but not the
final version. They can be freely removed.
2019-12-20 14:54:23 -05:00
Antoine Riard
201fb4b56a Add MIN_RELAY_FEE_SAT_PER_1000_WEIGHT
Hardcode min relay fee as its value is fixed on the bitcoin network
and updating it would be done really conservatively.
2019-12-09 22:19:43 -05:00
Valentine Wallace
f71518365f
chaininterface+multi: add filter_block and reentered to ChainWatchInterface
Because filter_block takes a  and returns a list of s , we must add a lifetime to the ChainWatchInterface, which bubbles up in a lot of places. These places include adding a lifetime  to the Node struct, which causes a lot of rearranging tests so that variables don't go out of scope before the Node that owns them does.
2019-11-21 20:35:53 -05:00
Valentine Wallace
969f863013
chaininterface: add BlockNotifier struct
Adding this struct will allow us to remove the circular reference
between ChainListeners and the ChainWatchInterface, because it
separates out the responsibility of notifying listeners about new
blocks from the responsibility of storing and retrieving watched
transactions.
2019-11-21 20:34:00 -05:00
Valentine Wallace
1ec0c14fce
multi: remove listeners field and method from ChainWatchInterface
This includes the purpose of this PR, which is to remove the circular reference created by ChainListeners self-adding themselves to their ChainWatchInterface's `listeners` field.
2019-11-21 18:06:35 -05:00
RJ Rybarczyk
88fef649b1 Use workspaces to separate crates 2019-11-15 02:44:30 +00:00
Renamed from src/chain/chaininterface.rs (Browse further)