From 6275dd384c2632187451be77f3738fe9ec4d60c8 Mon Sep 17 00:00:00 2001 From: Rusty Russell Date: Fri, 2 Jun 2023 12:06:20 +0930 Subject: [PATCH] lightningd: deprecate listconfigs direct fields. Changelog-Deprecated: JSON-RPC: `listconfigs` direct fields, use `configs` sub-object and `set`, `value_bool`, `value_str`, `value_int`, or `value_msat` fields. Signed-off-by: Rusty Russell --- doc/lightning-listconfigs.7.md | 130 ++++++++++++++-------------- doc/schemas/listconfigs.schema.json | 70 ++++++++++++++- lightningd/options.c | 5 +- tests/test_misc.py | 2 +- 4 files changed, 137 insertions(+), 70 deletions(-) diff --git a/doc/lightning-listconfigs.7.md b/doc/lightning-listconfigs.7.md index 7b9196235..d021677d1 100644 --- a/doc/lightning-listconfigs.7.md +++ b/doc/lightning-listconfigs.7.md @@ -255,80 +255,80 @@ On success, an object is returned, containing: - **commit-fee** (object, optional): - **value\_int** (u64): field from config or cmdline, or default - **source** (string): source of configuration setting -- **# version** (string, optional): Special field indicating the current version -- **plugins** (array of objects, optional): +- **# version** (string, optional): Special field indicating the current version **deprecated, removal in v24.05** +- **plugins** (array of objects, optional) **deprecated, removal in v24.05**: - **path** (string): Full path of the plugin - **name** (string): short name of the plugin - **options** (object, optional): Specific options set for this plugin: -- **important-plugins** (array of objects, optional): +- **important-plugins** (array of objects, optional) **deprecated, removal in v24.05**: - **path** (string): Full path of the plugin - **name** (string): short name of the plugin - **options** (object, optional): Specific options set for this plugin: -- **conf** (string, optional): `conf` field from cmdline, or default -- **lightning-dir** (string, optional): `lightning-dir` field from config or cmdline, or default -- **network** (string, optional): `network` field from config or cmdline, or default -- **allow-deprecated-apis** (boolean, optional): `allow-deprecated-apis` field from config or cmdline, or default -- **rpc-file** (string, optional): `rpc-file` field from config or cmdline, or default -- **disable-plugin** (array of strings, optional): +- **conf** (string, optional): `conf` field from cmdline, or default **deprecated, removal in v24.05** +- **lightning-dir** (string, optional): `lightning-dir` field from config or cmdline, or default **deprecated, removal in v24.05** +- **network** (string, optional): `network` field from config or cmdline, or default **deprecated, removal in v24.05** +- **allow-deprecated-apis** (boolean, optional): `allow-deprecated-apis` field from config or cmdline, or default **deprecated, removal in v24.05** +- **rpc-file** (string, optional): `rpc-file` field from config or cmdline, or default **deprecated, removal in v24.05** +- **disable-plugin** (array of strings, optional) **deprecated, removal in v24.05**: - `disable-plugin` field from config or cmdline -- **bookkeeper-dir** (string, optional): `bookkeeper-dir` field from config or cmdline, or default -- **bookkeeper-db** (string, optional): `bookkeeper-db` field from config or cmdline, or default -- **always-use-proxy** (boolean, optional): `always-use-proxy` field from config or cmdline, or default -- **daemon** (boolean, optional): `daemon` field from config or cmdline, or default -- **wallet** (string, optional): `wallet` field from config or cmdline default -- **large-channels** (boolean, optional): `large-channels` field from config or cmdline, or default -- **experimental-dual-fund** (boolean, optional): `experimental-dual-fund` field from config or cmdline, or default -- **experimental-onion-messages** (boolean, optional): `experimental-onion-messages` field from config or cmdline, or default -- **experimental-offers** (boolean, optional): `experimental-offers` field from config or cmdline, or default -- **experimental-shutdown-wrong-funding** (boolean, optional): `experimental-shutdown-wrong-funding` field from config or cmdline, or default -- **experimental-websocket-port** (u16, optional): `experimental-websocket-port` field from config or cmdline, or default -- **experimental-peer-storage** (boolean, optional): `experimental-peer-storage` field from config or cmdline, or default *(added v23.02)* -- **experimental-quiesce** (boolean, optional): `experimental-quiesce` field from config or cmdline, or default *(added v23.08)* -- **experimental-upgrade-protocol** (boolean, optional): `experimental-upgrade-protocol` field from config or cmdline, or default *(added v23.08)* -- **database-upgrade** (boolean, optional): `database-upgrade` field from config or cmdline -- **rgb** (hex, optional): `rgb` field from config or cmdline, or default (always 6 characters) -- **alias** (string, optional): `alias` field from config or cmdline, or default -- **pid-file** (string, optional): `pid-file` field from config or cmdline, or default -- **ignore-fee-limits** (boolean, optional): `ignore-fee-limits` field from config or cmdline, or default -- **watchtime-blocks** (u32, optional): `watchtime-blocks` field from config or cmdline, or default -- **max-locktime-blocks** (u32, optional): `max-locktime-blocks` field from config or cmdline, or default -- **funding-confirms** (u32, optional): `funding-confirms` field from config or cmdline, or default -- **cltv-delta** (u32, optional): `cltv-delta` field from config or cmdline, or default -- **cltv-final** (u32, optional): `cltv-final` field from config or cmdline, or default -- **commit-time** (u32, optional): `commit-time` field from config or cmdline, or default -- **fee-base** (u32, optional): `fee-base` field from config or cmdline, or default -- **rescan** (integer, optional): `rescan` field from config or cmdline, or default -- **fee-per-satoshi** (u32, optional): `fee-per-satoshi` field from config or cmdline, or default -- **max-concurrent-htlcs** (u32, optional): `max-concurrent-htlcs` field from config or cmdline, or default -- **htlc-minimum-msat** (msat, optional): `htlc-minimum-msat` field from config or cmdline, or default -- **htlc-maximum-msat** (msat, optional): `htlc-maximum-msat` field from config or cmdline, or default -- **max-dust-htlc-exposure-msat** (msat, optional): `max-dust-htlc-exposure-mast` field from config or cmdline, or default -- **min-capacity-sat** (u64, optional): `min-capacity-sat` field from config or cmdline, or default -- **addr** (string, optional): `addr` field from config or cmdline (can be more than one) -- **announce-addr** (string, optional): `announce-addr` field from config or cmdline (can be more than one) -- **bind-addr** (string, optional): `bind-addr` field from config or cmdline (can be more than one) -- **offline** (boolean, optional): `true` if `offline` was set in config or cmdline -- **autolisten** (boolean, optional): `autolisten` field from config or cmdline, or default -- **proxy** (string, optional): `proxy` field from config or cmdline, or default -- **disable-dns** (boolean, optional): `true` if `disable-dns` was set in config or cmdline +- **bookkeeper-dir** (string, optional): `bookkeeper-dir` field from config or cmdline, or default **deprecated, removal in v24.05** +- **bookkeeper-db** (string, optional): `bookkeeper-db` field from config or cmdline, or default **deprecated, removal in v24.05** +- **always-use-proxy** (boolean, optional): `always-use-proxy` field from config or cmdline, or default **deprecated, removal in v24.05** +- **daemon** (boolean, optional): `daemon` field from config or cmdline, or default **deprecated, removal in v24.05** +- **wallet** (string, optional): `wallet` field from config or cmdline default **deprecated, removal in v24.05** +- **large-channels** (boolean, optional): `large-channels` field from config or cmdline, or default **deprecated, removal in v24.05** +- **experimental-dual-fund** (boolean, optional): `experimental-dual-fund` field from config or cmdline, or default **deprecated, removal in v24.05** +- **experimental-onion-messages** (boolean, optional): `experimental-onion-messages` field from config or cmdline, or default **deprecated, removal in v24.05** +- **experimental-offers** (boolean, optional): `experimental-offers` field from config or cmdline, or default **deprecated, removal in v24.05** +- **experimental-shutdown-wrong-funding** (boolean, optional): `experimental-shutdown-wrong-funding` field from config or cmdline, or default **deprecated, removal in v24.05** +- **experimental-websocket-port** (u16, optional): `experimental-websocket-port` field from config or cmdline, or default **deprecated, removal in v24.05** +- **experimental-peer-storage** (boolean, optional): `experimental-peer-storage` field from config or cmdline, or default **deprecated, removal in v24.05** *(added v23.02)* +- **experimental-quiesce** (boolean, optional): `experimental-quiesce` field from config or cmdline, or default **deprecated, removal in v24.05** *(added v23.08)* +- **experimental-upgrade-protocol** (boolean, optional): `experimental-upgrade-protocol` field from config or cmdline, or default **deprecated, removal in v24.05** *(added v23.08)* +- **database-upgrade** (boolean, optional): `database-upgrade` field from config or cmdline **deprecated, removal in v24.05** +- **rgb** (hex, optional): `rgb` field from config or cmdline, or default (always 6 characters) **deprecated, removal in v24.05** +- **alias** (string, optional): `alias` field from config or cmdline, or default **deprecated, removal in v24.05** +- **pid-file** (string, optional): `pid-file` field from config or cmdline, or default **deprecated, removal in v24.05** +- **ignore-fee-limits** (boolean, optional): `ignore-fee-limits` field from config or cmdline, or default **deprecated, removal in v24.05** +- **watchtime-blocks** (u32, optional): `watchtime-blocks` field from config or cmdline, or default **deprecated, removal in v24.05** +- **max-locktime-blocks** (u32, optional): `max-locktime-blocks` field from config or cmdline, or default **deprecated, removal in v24.05** +- **funding-confirms** (u32, optional): `funding-confirms` field from config or cmdline, or default **deprecated, removal in v24.05** +- **cltv-delta** (u32, optional): `cltv-delta` field from config or cmdline, or default **deprecated, removal in v24.05** +- **cltv-final** (u32, optional): `cltv-final` field from config or cmdline, or default **deprecated, removal in v24.05** +- **commit-time** (u32, optional): `commit-time` field from config or cmdline, or default **deprecated, removal in v24.05** +- **fee-base** (u32, optional): `fee-base` field from config or cmdline, or default **deprecated, removal in v24.05** +- **rescan** (integer, optional): `rescan` field from config or cmdline, or default **deprecated, removal in v24.05** +- **fee-per-satoshi** (u32, optional): `fee-per-satoshi` field from config or cmdline, or default **deprecated, removal in v24.05** +- **max-concurrent-htlcs** (u32, optional): `max-concurrent-htlcs` field from config or cmdline, or default **deprecated, removal in v24.05** +- **htlc-minimum-msat** (msat, optional): `htlc-minimum-msat` field from config or cmdline, or default **deprecated, removal in v24.05** +- **htlc-maximum-msat** (msat, optional): `htlc-maximum-msat` field from config or cmdline, or default **deprecated, removal in v24.05** +- **max-dust-htlc-exposure-msat** (msat, optional): `max-dust-htlc-exposure-mast` field from config or cmdline, or default **deprecated, removal in v24.05** +- **min-capacity-sat** (u64, optional): `min-capacity-sat` field from config or cmdline, or default **deprecated, removal in v24.05** +- **addr** (string, optional): `addr` field from config or cmdline (can be more than one) **deprecated, removal in v24.05** +- **announce-addr** (string, optional): `announce-addr` field from config or cmdline (can be more than one) **deprecated, removal in v24.05** +- **bind-addr** (string, optional): `bind-addr` field from config or cmdline (can be more than one) **deprecated, removal in v24.05** +- **offline** (boolean, optional): `true` if `offline` was set in config or cmdline **deprecated, removal in v24.05** +- **autolisten** (boolean, optional): `autolisten` field from config or cmdline, or default **deprecated, removal in v24.05** +- **proxy** (string, optional): `proxy` field from config or cmdline, or default **deprecated, removal in v24.05** +- **disable-dns** (boolean, optional): `true` if `disable-dns` was set in config or cmdline **deprecated, removal in v24.05** - **disable-ip-discovery** (boolean, optional): `true` if `disable-ip-discovery` was set in config or cmdline **deprecated, removal in v23.11** -- **announce-addr-discovered** (string, optional): `true`/`false`/`auto` depending on how `announce-addr-discovered` was set in config or cmdline *(added v23.02)* -- **announce-addr-discovered-port** (integer, optional): Sets the announced TCP port for dynamically discovered IPs. *(added v23.02)* -- **encrypted-hsm** (boolean, optional): `true` if `encrypted-hsm` was set in config or cmdline -- **rpc-file-mode** (string, optional): `rpc-file-mode` field from config or cmdline, or default -- **log-level** (string, optional): `log-level` field from config or cmdline, or default -- **log-prefix** (string, optional): `log-prefix` field from config or cmdline, or default -- **log-file** (string, optional): `log-file` field from config or cmdline, or default -- **log-timestamps** (boolean, optional): `log-timestamps` field from config or cmdline, or default -- **force-feerates** (string, optional): force-feerate configuration setting, if any -- **subdaemon** (string, optional): `subdaemon` fields from config or cmdline if any (can be more than one) -- **fetchinvoice-noconnect** (boolean, optional): `fetchinvoice-noconnect` fields from config or cmdline, or default +- **announce-addr-discovered** (string, optional): `true`/`false`/`auto` depending on how `announce-addr-discovered` was set in config or cmdline **deprecated, removal in v24.05** *(added v23.02)* +- **announce-addr-discovered-port** (integer, optional): Sets the announced TCP port for dynamically discovered IPs. **deprecated, removal in v24.05** *(added v23.02)* +- **encrypted-hsm** (boolean, optional): `true` if `encrypted-hsm` was set in config or cmdline **deprecated, removal in v24.05** +- **rpc-file-mode** (string, optional): `rpc-file-mode` field from config or cmdline, or default **deprecated, removal in v24.05** +- **log-level** (string, optional): `log-level` field from config or cmdline, or default **deprecated, removal in v24.05** +- **log-prefix** (string, optional): `log-prefix` field from config or cmdline, or default **deprecated, removal in v24.05** +- **log-file** (string, optional): `log-file` field from config or cmdline, or default **deprecated, removal in v24.05** +- **log-timestamps** (boolean, optional): `log-timestamps` field from config or cmdline, or default **deprecated, removal in v24.05** +- **force-feerates** (string, optional): force-feerate configuration setting, if any **deprecated, removal in v24.05** +- **subdaemon** (string, optional): `subdaemon` fields from config or cmdline if any (can be more than one) **deprecated, removal in v24.05** +- **fetchinvoice-noconnect** (boolean, optional): `fetchinvoice-noconnect` fields from config or cmdline, or default **deprecated, removal in v24.05** - **accept-htlc-tlv-types** (string, optional): `accept-htlc-tlv-types` field from config or cmdline, or not present **deprecated, removal in v24.05** -- **tor-service-password** (string, optional): `tor-service-password` field from config or cmdline, if any -- **dev-allowdustreserve** (boolean, optional): Whether we allow setting dust reserves +- **tor-service-password** (string, optional): `tor-service-password` field from config or cmdline, if any **deprecated, removal in v24.05** +- **dev-allowdustreserve** (boolean, optional): Whether we allow setting dust reserves **deprecated, removal in v24.05** - **announce-addr-dns** (boolean, optional): Whether we put DNS entries into node\_announcement **deprecated, removal in v24.05** *(added v22.11.1)* -- **require-confirmed-inputs** (boolean, optional): Request peers to only send confirmed inputs (dual-fund only) -- **commit-fee** (u64, optional): The percentage of the 6-block fee estimate to use for commitment transactions *(added v23.05)* +- **require-confirmed-inputs** (boolean, optional): Request peers to only send confirmed inputs (dual-fund only) **deprecated, removal in v24.05** +- **commit-fee** (u64, optional): The percentage of the 6-block fee estimate to use for commitment transactions **deprecated, removal in v24.05** *(added v23.05)* [comment]: # (GENERATE-FROM-SCHEMA-END) @@ -446,4 +446,4 @@ RESOURCES Main web site: -[comment]: # ( SHA256STAMP:a3d32b74eb78b014e39ea85c19b3366e0468087ae44da633e9d5a194d2fe11b6) +[comment]: # ( SHA256STAMP:1702f7c62fe10d63612fbbf56eeaf043cdfef6fa874d4fdbdcb81bbbbe5c98d8) diff --git a/doc/schemas/listconfigs.schema.json b/doc/schemas/listconfigs.schema.json index ecc22bbda..844c60c28 100644 --- a/doc/schemas/listconfigs.schema.json +++ b/doc/schemas/listconfigs.schema.json @@ -1287,11 +1287,13 @@ } }, "# version": { + "deprecated": "v23.08", "type": "string", "description": "Special field indicating the current version" }, "plugins": { "type": "array", + "deprecated": "v23.08", "items": { "type": "object", "additionalProperties": false, @@ -1321,6 +1323,7 @@ }, "important-plugins": { "type": "array", + "deprecated": "v23.08", "items": { "type": "object", "additionalProperties": false, @@ -1349,26 +1352,32 @@ } }, "conf": { + "deprecated": "v23.08", "type": "string", "description": "`conf` field from cmdline, or default" }, "lightning-dir": { + "deprecated": "v23.08", "type": "string", "description": "`lightning-dir` field from config or cmdline, or default" }, "network": { + "deprecated": "v23.08", "type": "string", "description": "`network` field from config or cmdline, or default" }, "allow-deprecated-apis": { + "deprecated": "v23.08", "type": "boolean", "description": "`allow-deprecated-apis` field from config or cmdline, or default" }, "rpc-file": { + "deprecated": "v23.08", "type": "string", "description": "`rpc-file` field from config or cmdline, or default" }, "disable-plugin": { + "deprecated": "v23.08", "type": "array", "items": { "type": "string", @@ -1376,50 +1385,62 @@ } }, "bookkeeper-dir": { + "deprecated": "v23.08", "type": "string", "description": "`bookkeeper-dir` field from config or cmdline, or default" }, "bookkeeper-db": { + "deprecated": "v23.08", "type": "string", "description": "`bookkeeper-db` field from config or cmdline, or default" }, "always-use-proxy": { + "deprecated": "v23.08", "type": "boolean", "description": "`always-use-proxy` field from config or cmdline, or default" }, "daemon": { + "deprecated": "v23.08", "type": "boolean", "description": "`daemon` field from config or cmdline, or default" }, "wallet": { + "deprecated": "v23.08", "type": "string", "description": "`wallet` field from config or cmdline default" }, "large-channels": { + "deprecated": "v23.08", "type": "boolean", "description": "`large-channels` field from config or cmdline, or default" }, "experimental-dual-fund": { + "deprecated": "v23.08", "type": "boolean", "description": "`experimental-dual-fund` field from config or cmdline, or default" }, "experimental-onion-messages": { + "deprecated": "v23.08", "type": "boolean", "description": "`experimental-onion-messages` field from config or cmdline, or default" }, "experimental-offers": { + "deprecated": "v23.08", "type": "boolean", "description": "`experimental-offers` field from config or cmdline, or default" }, "experimental-shutdown-wrong-funding": { + "deprecated": "v23.08", "type": "boolean", "description": "`experimental-shutdown-wrong-funding` field from config or cmdline, or default" }, "experimental-websocket-port": { + "deprecated": "v23.08", "type": "u16", "description": "`experimental-websocket-port` field from config or cmdline, or default" }, "experimental-peer-storage": { + "deprecated": "v23.08", "type": "boolean", "added": "v23.02", "description": "`experimental-peer-storage` field from config or cmdline, or default" @@ -1427,167 +1448,206 @@ "experimental-quiesce": { "type": "boolean", "added": "v23.08", + "deprecated": "v23.08", "description": "`experimental-quiesce` field from config or cmdline, or default" }, "experimental-upgrade-protocol": { "type": "boolean", "added": "v23.08", + "deprecated": "v23.08", "description": "`experimental-upgrade-protocol` field from config or cmdline, or default" }, "database-upgrade": { + "deprecated": "v23.08", "type": "boolean", "description": "`database-upgrade` field from config or cmdline" }, "rgb": { + "deprecated": "v23.08", "type": "hex", "description": "`rgb` field from config or cmdline, or default", "maxLength": 6, "minLength": 6 }, "alias": { + "deprecated": "v23.08", "type": "string", "description": "`alias` field from config or cmdline, or default" }, "pid-file": { + "deprecated": "v23.08", "type": "string", "description": "`pid-file` field from config or cmdline, or default" }, "ignore-fee-limits": { + "deprecated": "v23.08", "type": "boolean", "description": "`ignore-fee-limits` field from config or cmdline, or default" }, "watchtime-blocks": { + "deprecated": "v23.08", "type": "u32", "description": "`watchtime-blocks` field from config or cmdline, or default" }, "max-locktime-blocks": { + "deprecated": "v23.08", "type": "u32", "description": "`max-locktime-blocks` field from config or cmdline, or default" }, "funding-confirms": { + "deprecated": "v23.08", "type": "u32", "description": "`funding-confirms` field from config or cmdline, or default" }, "cltv-delta": { + "deprecated": "v23.08", "type": "u32", "description": "`cltv-delta` field from config or cmdline, or default" }, "cltv-final": { + "deprecated": "v23.08", "type": "u32", "description": "`cltv-final` field from config or cmdline, or default" }, "commit-time": { + "deprecated": "v23.08", "type": "u32", "description": "`commit-time` field from config or cmdline, or default" }, "fee-base": { + "deprecated": "v23.08", "type": "u32", "description": "`fee-base` field from config or cmdline, or default" }, "rescan": { + "deprecated": "v23.08", "type": "integer", "description": "`rescan` field from config or cmdline, or default" }, "fee-per-satoshi": { + "deprecated": "v23.08", "type": "u32", "description": "`fee-per-satoshi` field from config or cmdline, or default" }, "max-concurrent-htlcs": { + "deprecated": "v23.08", "type": "u32", "description": "`max-concurrent-htlcs` field from config or cmdline, or default" }, "htlc-minimum-msat": { + "deprecated": "v23.08", "type": "msat", "description": "`htlc-minimum-msat` field from config or cmdline, or default" }, "htlc-maximum-msat": { + "deprecated": "v23.08", "type": "msat", "description": "`htlc-maximum-msat` field from config or cmdline, or default" }, "max-dust-htlc-exposure-msat": { + "deprecated": "v23.08", "type": "msat", "description": "`max-dust-htlc-exposure-mast` field from config or cmdline, or default" }, "min-capacity-sat": { + "deprecated": "v23.08", "type": "u64", "description": "`min-capacity-sat` field from config or cmdline, or default" }, "addr": { + "deprecated": "v23.08", "type": "string", "description": "`addr` field from config or cmdline (can be more than one)" }, "announce-addr": { + "deprecated": "v23.08", "type": "string", "description": "`announce-addr` field from config or cmdline (can be more than one)" }, "bind-addr": { + "deprecated": "v23.08", "type": "string", "description": "`bind-addr` field from config or cmdline (can be more than one)" }, "offline": { + "deprecated": "v23.08", "type": "boolean", "description": "`true` if `offline` was set in config or cmdline" }, "autolisten": { + "deprecated": "v23.08", "type": "boolean", "description": "`autolisten` field from config or cmdline, or default" }, "proxy": { + "deprecated": "v23.08", "type": "string", "description": "`proxy` field from config or cmdline, or default" }, "disable-dns": { + "deprecated": "v23.08", "type": "boolean", "description": "`true` if `disable-dns` was set in config or cmdline" }, "disable-ip-discovery": { + "deprecated": "v23.02", "type": "boolean", - "description": "`true` if `disable-ip-discovery` was set in config or cmdline", - "deprecated": "v23.02" + "description": "`true` if `disable-ip-discovery` was set in config or cmdline" }, "announce-addr-discovered": { + "deprecated": "v23.08", "type": "string", "description": "`true`/`false`/`auto` depending on how `announce-addr-discovered` was set in config or cmdline", "added": "v23.02" }, "announce-addr-discovered-port": { + "deprecated": "v23.08", "type": "integer", "description": "Sets the announced TCP port for dynamically discovered IPs.", "added": "v23.02" }, "encrypted-hsm": { + "deprecated": "v23.08", "type": "boolean", "description": "`true` if `encrypted-hsm` was set in config or cmdline" }, "rpc-file-mode": { + "deprecated": "v23.08", "type": "string", "description": "`rpc-file-mode` field from config or cmdline, or default" }, "log-level": { + "deprecated": "v23.08", "type": "string", "description": "`log-level` field from config or cmdline, or default" }, "log-prefix": { + "deprecated": "v23.08", "type": "string", "description": "`log-prefix` field from config or cmdline, or default" }, "log-file": { + "deprecated": "v23.08", "type": "string", "description": "`log-file` field from config or cmdline, or default" }, "log-timestamps": { + "deprecated": "v23.08", "type": "boolean", "description": "`log-timestamps` field from config or cmdline, or default" }, "force-feerates": { + "deprecated": "v23.08", "type": "string", "description": "force-feerate configuration setting, if any" }, "subdaemon": { + "deprecated": "v23.08", "type": "string", "description": "`subdaemon` fields from config or cmdline if any (can be more than one)" }, "fetchinvoice-noconnect": { + "deprecated": "v23.08", "type": "boolean", "description": "`fetchinvoice-noconnect` fields from config or cmdline, or default" }, @@ -1597,24 +1657,28 @@ "description": "`accept-htlc-tlv-types` field from config or cmdline, or not present" }, "tor-service-password": { + "deprecated": "v23.08", "type": "string", "description": "`tor-service-password` field from config or cmdline, if any" }, "dev-allowdustreserve": { + "deprecated": "v23.08", "type": "boolean", "description": "Whether we allow setting dust reserves" }, "announce-addr-dns": { + "deprecated": "v23.08", "type": "boolean", "added": "v22.11.1", - "deprecated": "v23.08", "description": "Whether we put DNS entries into node_announcement" }, "require-confirmed-inputs": { + "deprecated": "v23.08", "type": "boolean", "description": "Request peers to only send confirmed inputs (dual-fund only)" }, "commit-fee": { + "deprecated": "v23.08", "type": "u64", "added": "v23.05", "description": "The percentage of the 6-block fee estimate to use for commitment transactions" diff --git a/lightningd/options.c b/lightningd/options.c index 70f1d2cb6..e047973b7 100644 --- a/lightningd/options.c +++ b/lightningd/options.c @@ -2134,7 +2134,9 @@ static struct command_result *json_listconfigs(struct command *cmd, response = json_stream_success(cmd); - /* FIXME: Deprecate old output! */ + if (!deprecated_apis) + goto modern; + if (!config) json_add_string(response, "# version", version()); @@ -2163,6 +2165,7 @@ static struct command_result *json_listconfigs(struct command *cmd, } } +modern: json_object_start(response, "configs"); for (size_t i = 0; i < opt_count; i++) { unsigned int len; diff --git a/tests/test_misc.py b/tests/test_misc.py index 3153a53d8..d2626912e 100644 --- a/tests/test_misc.py +++ b/tests/test_misc.py @@ -1699,7 +1699,7 @@ def test_logging(node_factory): '-H', 'listconfigs']).decode('utf-8').splitlines() # Arrays get split awkwardly by -H! - assert 'log-file=logfile1' in lines + assert 'log-file=values_str=logfile1' in lines assert 'logfile2' in lines # Flat mode is better!