master
Name already in use
Commits on May 20, 2023
Commits on May 19, 2023
-
Without this, a stuck test (such as before the previous commit, where a plugin crashed when running a command) simply gets timed out by the full CI timeout. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
pytest: fix tests/test_cln_rs.py to avoid race.
When we release too fast, the plugin crashes: ``` thread 'tokio-runtime-worker' panicked at 'called Result::unwrap() on an Err value: SendError(())', plugins/examples/cln-plugin-reentrant.rs:31:27 note: run with RUST_BACKTRACE=1 environment variable to display a backtrace ``` This happens with CI under VALGRIND! Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Commits on May 10, 2023
-
meta: update changelog and pyln version for 23.05 release
Changelog-None
Commits on May 9, 2023
-
-
jsonrpc: Remove the old "_msat" prefix in the listpeerchannels command
This is a regression that we introduced in this release due to some dirty parts of our codebase. For historical reasons (I think), we were using a `json_add_sat_only` procedure defined in `peer_control.c`. So when @rustyrussell removed the _msat, we thought that all the fields were reflecting the new behavior, but we were wrong. This PR fixes this bug and also removes the additional function from `peer_control.c`. This way, we can be sure that there is no other part of our codebase that uses this method (except for other `json_add` methods). Link: #6244 Reported-by: @hMsats Signed-off-by: Vincenzo Palazzo <vincenzopalazzodev@gmail.com>
-
Variable inroduced in 708fb17 is making CI fail.
Commits on May 5, 2023
-
-
-
-
-
msggen: Add DecodePay to the mappings
Changelog-Added: grpc: Added mapping for `listpeerchannels`, `listclosedchannels`, `decode` and `decodepay` RPC method
-
-
msggen: Move overrides into the model itself
We were using per-type overrides which caused some asymmetries, where conversions could end up dropping fields as we went along. Essentially each conversion would need to override a superset of the previous one, which then caused issues when attempting to close the loop. By overriding on the model level we ensure that all representations are equivalent and convertible into one another, at the expense of overriding a bit more aggressively, which should be fine anyway.
-
-
cln-grpc: Rename the ChannelSide variants
IN/OUT => LOCAL/REMOTE
-
-
pytest: Add a test for the grpc conversion of listpeerchannels
This is still a huge response, so we better make sure we can actually convert it correctly.
-
msggen: Disable grpc response -> json response temporarily
We use overrides that omit fields in some cases, which makes the conversion lossy. This also means that until we complete the mapping we can't reconvert back.
-
-
Commits on Apr 26, 2023
-
-
fix: build with gcc 13 with enum and int mismatch
gcc 13 add an extra check for the enum in the definition of a method. In our case the code was failing with the following error, and the compiler is right, our definition is different from the implementation. ``` $ make CC: cc -DBINTOPKGLIBEXECDIR="../libexec/c-lightning" -Wall -Wundef -Wmissing-prototypes -Wmissing-declarations -Wstrict-prototypes -Wold-style-definition -Werror -Wno-maybe-uninitialized -Wshadow=local -std=gnu11 -g -fstack-protector-strong -Og -I ccan -I external/libwally-core/include/ -I external/libwally-core/src/secp256k1/include/ -I external/jsmn/ -I external/libbacktrace/ -I external/gheap/ -I external/x86_64-redhat-linux/libbacktrace-build -I external/libsodium/src/libsodium/include -I external/libsodium/src/libsodium/include/sodium -I external/x86_64-redhat-linux/libsodium-build/src/libsodium/include -I . -I/usr/local/include -DSHACHAIN_BITS=48 -DJSMN_PARENT_LINKS -DCOMPAT_V052=1 -DCOMPAT_V060=1 -DCOMPAT_V061=1 -DCOMPAT_V062=1 -DCOMPAT_V070=1 -DCOMPAT_V072=1 -DCOMPAT_V073=1 -DCOMPAT_V080=1 -DCOMPAT_V081=1 -DCOMPAT_V082=1 -DCOMPAT_V090=1 -DCOMPAT_V0100=1 -DCOMPAT_V0121=1 -DBUILD_ELEMENTS=1 -c -o LD: cc -Og config.vars -Lexternal/x86_64-redhat-linux -lwallycore -lsecp256k1 -ljsmn -lbacktrace -lsodium -L/usr/local/include -lm -lgmp -lsqlite3 -lz -o cc plugins/spender/multifundchannel.c plugins/spender/multifundchannel.c:71:6: error: conflicting types for ‘fail_destination_msg’ due to enum/integer mismatch; have ‘void(struct multifundchannel_destination *, enum jsonrpc_errcode, const char *)’ [-Werror=enum-int-mismatch] 71 | void fail_destination_msg(struct multifundchannel_destination *dest, | ^~~~~~~~~~~~~~~~~~~~ In file included from plugins/spender/multifundchannel.c:13: ./plugins/spender/multifundchannel.h:263:6: note: previous declaration of ‘fail_destination_msg’ with type ‘void(struct multifundchannel_destination *, int, const char *)’ 263 | void fail_destination_msg(struct multifundchannel_destination *dest, | ^~~~~~~~~~~~~~~~~~~~ cc1: all warnings being treated as errors make: *** [Makefile:307: plugins/spender/multifundchannel.o] Error 1 ``` The gcc 13 is not released yet, but fedora beta is out for public testing, so it is useful fix this error in this release candidate cycle. Changelog-Fixed: Build: Compilation with upcoming gcc 13 Reported-by: @grubles Link: #6175 Signed-off-by: Vincenzo Palazzo <vincenzopalazzodev@gmail.com> -
connectd: pass correct buflen to memmem
After the first iteration of the loop, we call memmem with a buflen that points past the end of buf. In practice we probably never read the uninitialized memory since we guarantee the buffer ends with "\r\n", and since most/all libc implementations probably read the haystack sequentially. But maybe there's some libc with a crazy optimization out there. It's good to use an accurate buflen just in case. Discovered this while running some unit tests with MSan.
Commits on Apr 24, 2023
-
Avoids failing the test with the pip warning: WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv reported by: @ksedgwic Changelog-None
-
reckless: simplify installer registration
Fixes a bug in installer registration where executable is evaluated before entrypoints and other details are added. ***RECKLESS STDERR*** Traceback (most recent call last): File lightning/tools/reckless, line 382, in <module> INSTALLERS['nodejs'].add_entrypoint('{name}') KeyError: 'nodejs' Reported by @ksedgwic Changelog-None
Commits on Apr 15, 2023
-
meta: Add changelog for 23.05rc1
Typo correction Updated delpay changelog
-
-
reckless: enable case-insensitive searching
Adds a test to validate case matching.
-
-
reckless: match name using installer entry formats
When enabling or disabling a plugin, the entrypoint is inferred from the user provided name. A canonical name should be used, which the installer entrypoint formats help to determine (this generally strips the file extension if one is provided.)
-
reckless: install command now uses
Installerclass methodsAlso adds a timeout when testing a plugin. Previously the behavior of pyln-client was relied upon to exit if not communicating with lightningd, however, this behavior is not universal. Changlelog-Changed: reckless now installs node.js plugins