Rusty Russell
34e93a718e
v0.11.0rc4
...
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-21 08:38:02 +09:30
Rusty Russell
37e8d2fb0f
connectd: disable advertizement of WEBSOCKET addresses.
...
This seems to prevent broad propagation, due to LND not allowing it. See
https://github.com/lightningnetwork/lnd/issues/6432
We still announce it if you disable deprecated-apis, so tests still work,
and hopefully we can enable it in future.
Fixes : #5196
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Changelog-EXPERIMENTAL: Protocol: disabled websocket announcement due to LND propagation issues
2022-04-21 06:13:55 +09:30
Rusty Russell
393e8e5e6a
connectd: remove a noisy debug msg, fix name typo.
...
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-21 06:13:55 +09:30
Rusty Russell
c110d0b068
pytest: test that node_announcement regeneration works as expected.
...
We shorten 24 hours to 24 seconds using --dev--fast-gossip-prune.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-21 06:13:55 +09:30
Rusty Russell
f81a7ff792
gossipd: fix daily node_announcement regeneration.
...
We have an explicit filter against redundant node_announcement
updates; we only allow 1 a week. This means that our change to force
a reannouncement every 24 hours did not work!
Allow once a day, instead.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-21 06:13:55 +09:30
Rusty Russell
a5d027cefc
connectd: send our own gossip, even if peer hasn't sent timestamp_filter.
...
We seem to have made node_announcement propagation *worse*, not
better. Explorers don't see my nodes updates.
At least some LND nodes never send us timestamp_filter, so we are
never actually stream *any* gossip. We should send gossip about
ourselves, even if they haven't set a filter (yet).
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Changelog-Added: Protocol: we more aggressively send our own gossip, to improve propagation chances.
2022-04-21 06:13:55 +09:30
Rusty Russell
9b944dbed4
common/gossip_store: add flag to *only* fetch "push"-marked messages.
...
These are the ones which are for our own channels (and our own node_announcement).
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-21 06:13:55 +09:30
Rusty Russell
ee21ae814a
gossipd: revert useless bf8cb640b7
.
...
This attempted to make us re-xmit our own node_announcement at restart,
by moving the node_announcement to the end of the gossip store. But,
as nothing is connected, yet, this had no effect!
We will rexmit it anyway, since it's marked PUSH.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-21 06:13:55 +09:30
zero fee routing
cb70d06d67
corrected typo in description
2022-04-20 21:17:01 +09:30
Rusty Russell
f0dc028fa9
lightningd: fix overzealous check in htlc_out_check:
...
```
+11.668971802 lightningdBROKEN: backtrace: lightningd/log.c:821 (fatal_vfmt) 0x558c893c997f
+11.668978165 lightningdBROKEN: backtrace: lightningd/log.c:829 (fatal) 0x558c893c9a30
+11.668984935 lightningdBROKEN: backtrace: lightningd/htlc_end.c:87 (corrupt) 0x558c893b9b7d
+11.668991262 lightningdBROKEN: backtrace: lightningd/htlc_end.c:205 (htlc_out_check) 0x558c893ba352
+11.669016705 lightningdBROKEN: backtrace: lightningd/peer_htlcs.c:1471 (check_already_failed) 0x558c893ea9c9
+11.669023345 lightningdBROKEN: backtrace: lightningd/peer_htlcs.c:1575 (onchain_failed_our_htlc) 0x558c893eb098
+11.669043122 lightningdBROKEN: backtrace: lightningd/onchain_control.c:438 (handle_onchain_htlc_timeout) 0x558c893cd6ec
+11.669049818 lightningdBROKEN: backtrace: lightningd/onchain_control.c:548 (onchain_msg) 0x558c893cdbdc
+11.669056372 lightningdBROKEN: backtrace: lightningd/subd.c:556 (sd_msg_read) 0x558c893fa532
+11.669063030 lightningdBROKEN: backtrace: ccan/ccan/io/io.c:59 (next_plan) 0x558c8948e3cd
+11.669069093 lightningdBROKEN: backtrace: ccan/ccan/io/io.c:407 (do_plan) 0x558c8948ef9e
+11.669075470 lightningdBROKEN: backtrace: ccan/ccan/io/io.c:417 (io_ready) 0x558c8948efdc
+11.669081900 lightningdBROKEN: backtrace: ccan/ccan/io/poll.c:453 (io_loop) 0x558c894912a8
+11.669087916 lightningdBROKEN: backtrace: lightningd/io_loop_with_timers.c:22 (io_loop_with_timers) 0x558c893c0966
+11.669094531 lightningdBROKEN: backtrace: lightningd/lightningd.c:1181 (main) 0x558c893c6bf9
```
Fixes : #5191
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-20 16:30:05 +09:30
Rusty Russell
33ae601266
CI: fix bsd workflow.
...
I have no idea why someone else owns the directory suddenly, but all git
commands fail. Workaround as suggested by the error message.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-20 07:16:01 +09:30
Rusty Russell
c3a7499573
connectd: avoid use-after-free on reconnect with remote_addr.
...
I was seeing a strange crash:
Connectd gave bad CONNECT_PEER_CONNECTED message
The message is indeed mangled, around the remote_addr!
A quick review of the code revealed that we were not making a copy
when it was a reconnect, and so the remote_addr pointer was pointing
to memory which was freed.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-20 06:44:58 +09:30
Rusty Russell
151d009435
lightningd: remove over-zealous assert.
...
This was hit on my node.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-13 10:32:29 +09:30
Rusty Russell
a326ea8bb2
CHANGELOG.md: rc3
...
This time for sure!
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-13 08:02:45 +09:30
Rusty Russell
e90b50a1b2
dualopend: handle dev_memleak during RBF.
...
Happens in CI:
```
lightningd-2: 2022-04-10T15:30:40.788Z **BROKEN** 0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518-dualopend-chan#1: STATUS_FAIL_MASTER_IO: Error parsing 7507: 1b79
```
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-13 05:25:20 +09:30
Rusty Russell
3f94b74e07
pytest: don't add extra cln-grpc instance now plugin is builtin
...
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-13 05:25:00 +09:30
Rusty Russell
355025239d
Make sure DEFAULT_TARGETS includes rust testing examples.
...
Otherwise tests fail:
```
def test_plugin_start(node_factory):
"""Start a minimal plugin and ensure it is well-behaved
"""
bin_path = Path.cwd() / "target" / "debug" / "examples" / "cln-plugin-startup"
> l1 = node_factory.get_node(options={"plugin": str(bin_path), 'test-option': 31337})
...
error starting plugin '/home/runner/work/lightning/lightning/target/debug/examples/cln-plugin-startup': opening pipe: No such file or directory
```
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-13 05:25:00 +09:30
Rusty Russell
e5abc10ae2
configure: require rustfmt as well, for rust support.
...
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-13 05:25:00 +09:30
Rusty Russell
bad89f186a
doc/Makefile: make check-manpages require the cln-grpc plugin.
...
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-13 05:25:00 +09:30
Rusty Russell
c598d4df74
Makefile: make sure ALL_PROGRAMS doesn't include cln-grpc plugin.
...
$(ALL_PROGRAMS) are assumed to be C programs for now.
Add $(C_PLUGINS) as a new variable.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-13 05:25:00 +09:30
Rusty Russell
a3ec140c03
doc: document the grpc-port option, now cln-grpc is a built-in.
...
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-13 05:25:00 +09:30
Rusty Russell
e4ed15dc33
plugins: fix cln-grpc to work as a builtin when we're run in-tree.
...
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-13 05:25:00 +09:30
Rusty Russell
436706384c
plugins: add grpc-plugin to PLUGINS, so it gets started and installed.
...
Fixes : #5162
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-13 05:25:00 +09:30
Rusty Russell
874d3532da
libwally: update to v0.8.5
...
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-12 15:17:52 +09:30
Michael Dance
f067e8c909
Changed external/libwally-core to test_build_fix
...
Combined with the following commit which is required to
update against changed libsecp256k1 APIs:
Updated deprecated function calls
2022-04-12 15:17:52 +09:30
Christian Decker
b359a24772
cln-plugin: Handle --help invocations better
...
We now have ternary outcomes for `Builder.configure()` and
`Builder.start()`:
- Ok(Some(p)) means we were configured correctly, and can continue
with our work normally
- Ok(None) means that `lightningd` was invoked with `--help`, we
weren't configured (which is not an error since the `lightningd` just
implicitly told us to shut down) and user code should clean up and
exit as well
- Err(e) something went wrong, user code may report an error and exit.
2022-04-11 15:20:32 +09:30
Stephen Webel
c36cef08bc
use full path to reference lightningd.c
...
The relative path makes for a difficult experience when people are reading on `https://lightning.readthedocs.io/ `. Directly linking saves the reader a few clicks hunting down the correct location :)
2022-04-10 14:38:08 +09:30
Christian Decker
8717c4e5a2
cln-grpc: Add midstate between configuration and replying to init
...
This is a bit special, in that it allows us to configure the plugin,
but then still abort startup by sending `init` with the `disable` flag
set.
2022-04-10 14:16:35 +09:30
Christian Decker
9826402c99
cln-grpc: Do not exit if grpc-port is not set
...
Exiting doesn't mesh well with builtin plugins, so just sit there and
do nothing
Changelog-None
2022-04-10 14:16:35 +09:30
Christian Decker
9a8bc777e5
msggen: Add pay descriptions and maxfee
2022-04-08 11:30:10 +09:30
Christian Decker
767da45037
cln-grpc: Do not log an error when called with --help
...
Changelog-None
2022-04-08 11:30:10 +09:30
Rusty Russell
fbcdbe8842
release: v0.11.0rc2
...
One "my node won't start" fix, but lots of doc updates.
There will be an rc3: the cln-rpc plugin needs some love.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-07 14:46:41 +09:30
Vincenzo Palazzo
3dfe32abb0
docs: use poetry in the osx installation process
...
Changelog-None: docs: use poetry in the osx installation process
Signed-off-by: Vincenzo Palazzo <vincenzopalazzodev@gmail.com>
2022-04-07 06:54:49 +09:30
Gregory Sanders
c4d4984cbf
Travis is no longer used
2022-04-07 06:54:02 +09:30
Gregory Sanders
6b79eed2e8
there are four tests
2022-04-07 06:54:02 +09:30
Rusty Russell
836c1b805b
doc: update c-lightning to Core Lightning almost everywhere.
...
Mostly comments and docs: some places are actually paths, which
I have avoided changing. We may migrate them slowly, particularly
when they're user-visible.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-07 06:53:26 +09:30
Rusty Russell
8c2f3ab5fe
CHANGELOG.md: fix typos
...
Reported-by: @endothermicdev
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-07 06:53:26 +09:30
Rusty Russell
d95ea51a73
lightning-cli: document the real argument handling (for special effects).
...
And fix it to pass through decimals like the man page promises!
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-07 06:53:26 +09:30
Rusty Russell
356514c753
doc: note how to do Rust builds on Ubuntu, at least.
...
In particular, using cargo to install rustfmt doesn't work.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-07 06:53:26 +09:30
Clay Shoaf
17903c89f2
Update INSTALL.md
...
changed `make` to `poetry run make`.
Also moved the spot where `poetry install` is run as it wouldn't make sense to run it before the project is cloned.
2022-04-06 11:06:08 +09:30
kiwiidb
8ed6b7050b
build: bump zlib dependency
2022-04-06 08:06:50 +09:30
Rusty Russell
d18817a525
wallet: don't get so upset on orphaned HTLC.
...
User grubman on IRC reported a crash due to new HTLC checks:
```
2022-04-05T01:15:17.707Z **BROKEN** wallet: Missing preimage for orphaned HTLC; replacing with zeros
...
2022-04-05T01:15:44.950Z **BROKEN** lightningd: check_already_failed:Both failed and succeeded?
2022-04-05T01:15:45.020Z **BROKEN** lightningd: FATAL SIGNAL 6 (version v0.11.0rc1-modded)
2022-04-05T01:15:45.020Z **BROKEN** lightningd: backtrace: common/daemon.c:38 (send_backtrace) 0xaaaab8f7f8bb
2022-04-05T01:15:45.020Z **BROKEN** lightningd: backtrace: common/daemon.c:46 (crashdump) 0xaaaab8f7f91b
2022-04-05T01:15:45.020Z **BROKEN** lightningd: backtrace: (null):0 ((null)) 0xffffa4a315bf
2022-04-05T01:15:45.020Z **BROKEN** lightningd: backtrace: (null):0 ((null)) 0xffffa45c6cd8
2022-04-05T01:15:45.020Z **BROKEN** lightningd: backtrace: (null):0 ((null)) 0xffffa45b3a27
2022-04-05T01:15:45.020Z **BROKEN** lightningd: backtrace: lightningd/log.c:821 (fatal_vfmt) 0xaaaab8f3e1b7
2022-04-05T01:15:45.020Z **BROKEN** lightningd: backtrace: lightningd/log.c:829 (fatal) 0xaaaab8f3e24b
2022-04-05T01:15:45.020Z **BROKEN** lightningd: backtrace: lightningd/htlc_end.c:87 (corrupt) 0xaaaab8f325d3
2022-04-05T01:15:45.020Z **BROKEN** lightningd: backtrace: lightningd/htlc_end.c:175 (htlc_out_check) 0xaaaab8f32ee3
2022-04-05T01:15:45.020Z **BROKEN** lightningd: backtrace: lightningd/peer_htlcs.c:1471 (check_already_failed) 0xaaaab8f53ea7
2022-04-05T01:15:45.020Z **BROKEN** lightningd: backtrace: lightningd/peer_htlcs.c:1575 (onchain_failed_our_htlc) 0xaaaab8f54aab
2022-04-05T01:15:45.020Z **BROKEN** lightningd: backtrace: lightningd/onchain_control.c:411 (handle_missing_htlc_output) 0xaaaab8f4037b
2022-04-05T01:15:45.020Z **BROKEN** lightningd: backtrace: lightningd/onchain_control.c:544 (onchain_msg) 0xaaaab8f409bf
2022-04-05T01:15:45.020Z **BROKEN** lightningd: backtrace: lightningd/subd.c:556 (sd_msg_read) 0xaaaab8f5f8ef
2022-04-05T01:15:45.020Z **BROKEN** lightningd: backtrace: ccan/ccan/io/io.c:59 (next_plan) 0xaaaab8fda197
2022-04-05T01:15:45.020Z **BROKEN** lightningd: backtrace: ccan/ccan/io/io.c:407 (do_plan) 0xaaaab8fda76f
2022-04-05T01:15:45.020Z **BROKEN** lightningd: backtrace: ccan/ccan/io/io.c:417 (io_ready) 0xaaaab8fda82f
2022-04-05T01:15:45.020Z **BROKEN** lightningd: backtrace: ccan/ccan/io/poll.c:453 (io_loop) 0xaaaab8fdc77f
2022-04-05T01:15:45.020Z **BROKEN** lightningd: backtrace: lightningd/io_loop_with_timers.c:22 (io_loop_with_timers) 0xaaaab8f37857
2022-04-05T01:15:45.021Z **BROKEN** lightningd: backtrace: lightningd/lightningd.c:1181 (main) 0xaaaab8f3bcff
2022-04-05T01:15:45.021Z **BROKEN** lightningd: backtrace: (null):0 ((null)) 0xffffa45b3d4f
2022-04-05T01:15:45.021Z **BROKEN** lightningd: backtrace: (null):0 ((null)) 0xaaaab8f1ed33
```
Since no HTLCs are likely to still be pending since v0.6.1, we can remove that compat
code. Indeed, this happens on my node: we've not loaded the incoming HTLC because
it's resolved.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-05 15:39:38 +09:30
Rusty Russell
c55ae7cbcb
CHANGELOG.md: update for final PR merge.
...
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-05 08:48:46 +09:30
William Casarin
cf2e2d7445
changelog: remove duplicate pr links
2022-04-05 08:48:46 +09:30
William Casarin
79c2929085
changelog: sort pr links
2022-04-05 08:48:46 +09:30
Rusty Russell
600525d74c
v0.11.0rc1
...
Finally!
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-05 08:48:46 +09:30
Michael Schmoock
0799328775
pytest: test custom config options for fees and htlc limits
2022-04-05 05:45:04 +09:30
Michael Schmoock
62df569d49
pytest: option disable-ip-discovery
2022-04-05 05:45:04 +09:30
Michael Schmoock
e99f9ad6d6
doc: htlc_minimum_msat htlc_maximum_msat announce_discovered_ip
...
doc/schemas: adds htlc min/max and ip discovery
2022-04-05 05:45:04 +09:30
Michael Schmoock
21fd3b22d4
config: adds htlc_minimum_msat htlc_maximum_msat announce_discovered_ip
...
This adds config and commandline options for htlc_min_msat, htlc_max_msat and
announce_discovered_ip. The default is 0msat for htlc_min_msat, unlimited for
htlc_max_msat and enabled for announce_discovered_ip.
The announce_discovered_ip gets the disable commandline switch --disable-ip-discovery
Changelog-added: Config options for htlc_min_msat, htlc_max_msat and announce_discovered_ip.
2022-04-05 05:45:04 +09:30