A highly modular Bitcoin Lightning library written in Rust. It's rust-lightning, not Rusty's Lightning!
Find a file
Matt Corallo 2c8bc3c64e Correct input comparison for input-subset RBF bump creation
This resolves a regression introduced in "Implement bumping engine in
ChannelMonitor::block_connected" in which not all inputs are checked.
Several opportunities to clarify and clean up comments are also taken.

Fix test_bump_penalty_txn_on_revoked_htlcs as now remote claim txn
build the same way than us are going to be register as cleaning
pending_claim_request after ANTI_REORG_DELAY. It means during this
delay we are going to generate invalid bumped claiming txn on
already claimed outpoints. Previously these txn weren't issued
because all their outpoints would have been removed.

Fix full_stack_target by adding more input for FuzzEstimator
2019-12-10 17:42:40 -05:00
fuzz Correct input comparison for input-subset RBF bump creation 2019-12-10 17:42:40 -05:00
lightning Correct input comparison for input-subset RBF bump creation 2019-12-10 17:42:40 -05:00
lightning-net-tokio Use workspaces to separate crates 2019-11-15 02:44:30 +00:00
.editorconfig Fix typos 2019-01-24 19:07:08 +02:00
.gitignore Add net-tokio/target to gitignore 2019-07-31 11:23:05 -04:00
.travis.yml Move fuzz to top level. 2019-11-25 15:42:07 -05:00
Cargo.toml Move test profile to crate root, so it has effect again 2019-11-28 01:21:41 -05:00
LICENSE Unify license with rust-bitcoin-spv 2018-03-05 15:09:44 -05:00
README.md Bump progress tracker 2019-07-24 20:03:48 +00:00

Safety Dance

Rust-Lightning, not Rusty's Lightning!

Documentation can be found at docs.rs

Currently somewhere near 40% towards usable, published to see if there is any real interest from folks in using a lightning rust library.

The goal is to provide a full-featured but also incredibly flexible lightning implementation, allowing the user to decide how they wish to use it. With that in mind, everything should be exposed via simple, composable APIs. The user should be able to decide whether they wish to use their own threading/execution models, allowing usage inside of existing library architectures, or allow us to handle that for them. Same goes with network connections - if the user wishes to use their own networking stack, they should be able to do so! This all means that we should provide simple external interfaces which allow the user to drive all execution, while implementing sample execution drivers that create a full-featured lightning daemon by default.

For security reasons, do not add new dependencies. Really do not add new non-optional/non-test/non-library dependencies. Really really do not add dependencies with dependencies. Do convince Andrew to cut down dependency usage in rust-bitcoin.

Notes on coding style:

  • Use tabs. If you want to align lines, use spaces. Any desired alignment should display fine at any tab-length display setting.

License is Apache-2.0.