build: remove --enable-experimental-features / EXPERIMENTAL_FEATURES

Changelog-EXPERIMENTAL: Build: all experimental features are now runtime-enabled; no more ./configure --enable-experimental-features
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
This commit is contained in:
Rusty Russell
2023-05-22 10:21:44 +09:30
parent c11ae1aa34
commit e7d4c3175a
18 changed files with 25 additions and 101 deletions

View File

@@ -24,7 +24,7 @@ a few sanitizers for bug detections as well as experimental features for an exte
coverage (not required though).
```
./configure --enable-developer --enable-experimental-features --enable-address-sanitizer --enable-ub-sanitizer --enable-fuzzing --disable-valgrind CC=clang && make
./configure --enable-developer --enable-address-sanitizer --enable-ub-sanitizer --enable-fuzzing --disable-valgrind CC=clang && make
```
The targets will be built in `tests/fuzz/` as `fuzz-` binaries, with their best

View File

@@ -236,7 +236,7 @@ have a line with one of the following prefixes:
not yet removed
- `Changelog-Fixed: ` if a bug has been fixed
- `Changelog-Removed: ` if a (previously deprecated) feature has been removed
- `Changelog-Experimental: ` if it only affects --enable-experimental-features builds, or experimental- config options.
- `Changelog-Experimental: ` if it only affects experimental- config options.
In case you think the pull request is small enough not to require a changelog
entry please use `Changelog-None` in one of the commit messages to opt out.

View File

@@ -664,28 +664,18 @@ considered important.
Experimental options are subject to breakage between releases: they
are made available for advanced users who want to test proposed
features. When the build is configured _without_ `--enable-experimental-features`,
below options are available but disabled by default.
Supported features can be listed with `lightningd --list-features-only`
A build _with_ `--enable-experimental-features` flag hard-codes some of below
options as enabled, ignoring their command line flag. It may also add support for
even more features. The safest way to determine the active configuration is by
checking `listconfigs` or by looking at `our_features` (bits) in `getinfo`.
features.
* **experimental-onion-messages**
Specifying this enables sending, forwarding and receiving onion messages,
which are in draft status in the [bolt][bolt] specifications (PR #759).
A build with `--enable-experimental-features` usually enables this via
experimental-offers, see below.
This is automatically enabled by `experimental-offers`.
* **experimental-offers**
Specifying this enables the `offers` and `fetchinvoice` plugins and
corresponding functionality, which are in draft status ([bolt][bolt] #798) as [bolt12][bolt12].
A build with `--enable-experimental-features` enables this permanently and usually
enables experimental-onion-messages as well.
corresponding functionality, which are in draft status ([bolt][bolt] #798) as [bolt12][bolt12], as well as `experimental-onion-messages`.
* **fetchinvoice-noconnect**