Christian Decker
49a22a8dd7
features: Add function to unset a featurebit
...
Needed so we can blank optional bits when comparing channel_types.
2022-04-20 15:16:31 +02:00
Christian Decker
9574c0d89c
openingd: Set minimum_depth=0 if peer is allowed to do zeroconf
...
Creates a copy of `our_features` for the uncommitted channel so we can
customize it per peer.
2022-04-20 15:16:31 +02:00
Christian Decker
936507eb08
bolt: Reflect the zeroconf featurebits in code
2022-04-19 12:55:48 +02:00
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
Rusty Russell
c1e7c14c46
pytest: test that deduplication for bolt11
works as expected.
...
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-04 20:26:04 +09:30
Rusty Russell
f51a3d8ef7
plugins/pay: always include bolt11
(and description
) in listpays.
...
We were setting it on the root, but that doesn't get handed to
sendpay. Our schema doesn't *require* bolt11, either, so this was
missed (there could be a *bolt12* instead).
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Changelog-Fixed: JSON-RPC: `listpays` always includes `bolt11` or `bolt12` field.
2022-04-04 20:26:04 +09:30
Rusty Russell
e47786da04
pay/sendpay: also store description in case bolt11 uses description_hash.
...
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-04 20:26:04 +09:30
Rusty Russell
d5c736fe86
pay: require description if bolt11 only has hash.
...
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Changelog-Added: JSON-RPC: `pay` has `description` parameter, will be required if bolt11 only has a hash.
Changelog-Deprecated: JSON-RPC: `pay` for a bolt11 which uses a `description_hash`, without setting `description`.
2022-04-04 20:26:04 +09:30
Rusty Russell
6c54e0e7e7
pay: add absolute "maxfee" parameter.
...
This is what LND does, and it's better for upper layers than trying to
twist our maxfeepercent / exemptfee heuristics to suit.
(I don't remember who complained about this, sorry!)
I'm doing this now because I want to add YA parameter next!
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Changelog-Added: JSON-RPC: `pay` has new parameter `maxfee` for setting absolute fee (instead of using `maxfeepercent` and/or `exemptfee`)
2022-04-04 20:26:04 +09:30
Rusty Russell
713cd0540d
doc: document pay
localofferid field.
...
Fixes : #4665
Reported-by: @shesek
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-04 20:26:04 +09:30
Rusty Russell
92028ebaee
plugins/pay: remove legacypay.
...
I think the new pay command has proven itself in the last 18 months!
Also various pay tests took "compat" then didn't use it, so clean them
up.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Changelog-Removed: JSON-RPC: `legacypay` (`pay` replaced it in 0.9.0).
2022-04-04 20:26:04 +09:30
Rusty Russell
591a51ca6a
pytest: fix invalid invoice() call.
...
Trips on our RPC checking introduced at the same time: msat should be
an integer or an "xxxmsat"/sat/btc string.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-04 20:26:04 +09:30
Christian Decker
aae5e3d070
cln-grpc: Final generation of derived files
...
Didn't want to pollute each commit with the changes in the derived
files so here are all the changes in one commit :-)
2022-04-02 09:46:01 +10:30