C-lightning: A specification compliant Lightning Network implementation in C
C-lightning is a lighweight, highly customizable and standard compliant implementation of the Lightning Network protocol.
C-lightning only works on Linux and Mac OS, and requires a locally (or remotely) running groestlcoind (version 2.16.0 or above) that is fully caught up with the network you're testing on.
Changelog 0.9.2
• The sending of multi-part payments has seen a lot of work, covering more corner cases and generally becoming much more robust.
• New official plugins create commands multiwithdraw and multifundchannel to easily produce a single transaction which does more than one thing; these use the PSBT plumbing created for v0.9.0.
• We produce far less log spam when log-level is set to debug, so if you've avoided setting that before, I recommend trying now.
• Startup checks that groestlcoind is the correct version, and relays transactions
• Builtin plugins are now nominated as important, and you can nominate others as important too. The daemon will stop if these fail.
• You can now build a postgres-only installation, without sqlite3.
• Our invoices now supply more than one routehint if we think you'll need to use multi-part-payments.
• We prune channels which are not updated in both directions every 2 weeks.
• Our default CTLV expiry has increased to 34 blocks, or 18 if we're the final node, as per updated specification recommendations (lightningnetwork/lightning-rfc#785)
• PSBT APIs fleshed out with utxopsbt and locktime arguments.
• Plugins can easily mark commands and options deprecated.
• The new channel_state_changed notification lets plugins easily track channel behavior.
• We now keep track of channel closure rationales. Wonder "why did my channel close" no more. All channel state changes are now listed in listpeers's state_changes.
• New CLI/RPC notifications: Tired of waiting for close to finish without getting any updates? With notifications, the close command will publish notifications (think CLI status updates) for slow closes. Must have allow-deprecated-apis set to false for these to work.
• New optional argument commitment_feerate on the multifundchannel command. This is useful for setting one feerate for the funding transaction and another for the channel commitment transactions.
• Two new commands added to hsmtool:
- generatehsm allows you to create an HSM hsm_secret from a BIP39 pass phrase. (Note that due to c-lightning's current seed derivation process, wallet addresses aren't standard 'BIP39 to BIP32' compliant. Which is a fancy way of saying your pass phrase isn't portable to other, non-clightning wallets.)
- dumponchaindescriptors will output the xpub for the HD wallet master key. This will let you track swept c-lightning wallet funds -- anchor outputs and unswept channel outputs won't be visible until swept.
• The starting feerate for mutual closes has been reduced to 'slow', to avoid overpayment.
• In-memory log buffer now is 10MB, down from 100MB.
• We no longer support receiving full gossip from ancient LND nodes
• Fixed re-transmission order of multiple new HTLCS. This was causing channel closures with LND.
• Plugin hook call ordering. Hooks can now specify that they must be called 'before' or 'after' other plugins.
• pyln-client will handle and send RPC command notifications.
• pyln-proto now includes a pure python implementation of the sphinx onion creation and processing.
• PostgresSQL key-value DSNs now supported.
• Plugin hook htlc_accepted can now return a custom failure_onion.
Features
• Creating channels.
• Closing channels.
• Completely managing all channel states (including the exceptional ones!).
• Performing path finding within the network, passively forwarding incoming payments.
• Sending outgoing onion-encrypted payments through the network.
• Automatic channel management (autopilot).
This application is licensed under MIT. There is no warranty and no party shall be made liable to you for damages. If you lose coins due to this app, no compensation will be given. Use this app solely at your own risk.
Linux:
https://github.com/Groestlcoin/lightning/blob/master/doc/INSTALL.md#to-build-on-ubuntuOSX:
https://github.com/Groestlcoin/lightning/blob/master/doc/INSTALL.md#to-build-on-macosSource code:
https://github.com/Groestlcoin/lightning