core-lightning/CHANGELOG.md
Rusty Russell 9d517ddc1d options: remove default-fee-rate now we don't use it.
And no more filtering out messages, as we should no longer spam the
logs with them (the 'Connected json input' one was removed some time
ago).

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2018-08-25 00:33:12 +00:00

5.4 KiB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog and this project adheres to Semantic Versioning.

Unreleased

Added

  • Documentation: Added CHANGELOG.md
  • JSON API: getinfo has new fields alias and color.
  • JSON API: listpeers has new fields global_features and local_features.
  • JSON API: listnodes has new field global_features.
  • JSON API: ping command to send a ping to a connected peer.
  • Protocol: gossipd now deliberately delays spamming with channel_update.
  • Protocol: liveness ping when we commit changes but peer is idle: speeds up failures and reduces forced closures.
  • Config: --conf option to set config file.
  • JSON API: Added description to invoices and payments (#1740).
  • pylightning: RpcError now has method and payload fields.
  • Sending lightningd a SIGHUP will make it reopen its log-file, if any.
  • Protocol: option_data_loss_protect now supported to protect peers against being out-of-date.

Changed

  • Config: You can only announce one address if each type (IPv4, IPv6, TORv2, TORv3).
  • Protocol: Fee estimates are now smoothed over time, to avoid sudden jumps.
  • lightning-cli: the help command for a specific command now runs the man command.
  • HSM: The HSM daemon now maintains the per-peer secrets, rather than handing them out. It's still lax in what it signs though.
  • connectd: A new daemon lightning_connectd handles connecting to/from peers, instead of gossipd doing that itself. lightning_openingd now handles peers immediately, even if they never actually open a channel.
  • Test: python-xdist is now a dependency for tests.
  • Logging: JSON connections no longer spam debug logs.
  • Routing: We no longer consider channels that are not usable either because of their capacity or their htlc_minimum_msat parameter (#1777)
  • We now try to connect to all known addresses for a peer, not just the one given or the first one announced.
  • Crash logs are now placed one-per file like crash.log.20180822233752

Deprecated

Note: You should always set allow-deprecated-apis=false to test for changes.

Removed

  • JSON API: listpeers results no long have alias and color fields; they're in listnodes (we used to internally merge the information).
  • JSON API: listpeers will never have state field (it accidentally used to exist and set to GOSSIPING before we opened a channel). connected will indicate if we're connected, and the channels array indicates individual channel states (if any).
  • Options: default-fee-rate is no longer available.
  • Removed all Deprecated options from 0.6.

Fixed

  • Options: bind-addr of a publicly accessible network address was announced.
  • Protocol: node_announcement multiple addresses are correctly ordered and uniquified.
  • JSON API: listnodes: now displays node aliases and colors even if they don't advertise a network address
  • JSON API: fundchannel all: now restricts to 2^24-1 satoshis rather than failing.
  • When we reconnect and have to retransmit failing HTLCs, the errors weren't encrypted by us.
  • lightningd_config man page is now installed by make install.
  • Fixed crash when shutting down during opening a channel (#1737)
  • Don't lose track of our own output when applying penalty transaction (#1738)
  • Protocol: channel_update inside error messages now refers to correct channel.
  • Stripping type prefix from channel_updates that are nested in an onion reply to be compatible with eclair and lnd (#1730).
  • JSON API: listnodes: now correctly prints addresses if more than one is advertised.
  • Failing tests no longer delete the test directory, to allow easier debugging (Issue: #1599)
  • Protocol: if we can't estimate feerate, be almost infinitely tolerant of other side setting fees to avoid unilateral close.

Security

0.6 - 2018-06-22

In the prehistory of c-lightning, no changelog was kept. But major JSON API changes are tracked.

Deprecated

Note: You should always set allow-deprecated-apis=false to test for changes.

  • Option: port. Use addr=:<portnum>.
  • Option: ipaddr. Use addr.
  • Option: anchor-confirms. Use funding-confirms.
  • Option: locktime-blocks. Use watchtime-blocks.
  • Protocol: on closing we allow out-of-range offers, prior to spec fix 2018-01-30 ("BOLT 2: order closing-signed negotiation by making funder send first." 90241d9cf60a598eac8fd839ac81e4093a161272)
  • JSON API: listinvoice command. Use listinvoices.
  • JSON API: invoice result fields paid_timestamp and expiry_time. Use paid_at and expires_at.
  • JSON API: invoice command field fallback. Use fallbacks.
  • JSON API: decodepay result fields timestamp and fallback. Use created_at and fallbacks.
  • JSON API: payment result fields timestamp. Use created_at.
  • JSON API: getinfo result field port. Use binding and address arrays.
  • JSON API: getlog result field creation_time. Use created_at.
  • JSON API: getpeers result field channel_reserve_satoshis. Use their_channel_reserve_satoshis.
  • JSON API: getpeers result field to_self_delay. Use their_to_self_delay.