Commit Graph

98 Commits

Author SHA1 Message Date
Madeline Vibes
766db61370 Meta: Adding changelog and version update for 25.09.1 2025-10-21 08:17:35 +05:30
Madeline Paech
d7d0e3222b update the versions for 25.09 2025-09-01 13:13:38 +09:30
madelinevibes
81838fabf9 updates for rc4: name changes and uv 2025-08-28 15:59:52 +09:30
madelinevibes
c25f0fafff small changes of any reference to rc2 to rc3 2025-08-27 15:29:16 +09:30
madelinevibes
fcd92febad change version 25.09rc2 for release
replace rc1
2025-08-21 16:12:27 +09:30
Sangbida Chaudhuri
da7d3057ed Run version script for rc1.
Run version script
2025-08-19 16:46:29 +09:30
Alex Myers
79b5695835 reckless: reduce uv verbosity and avoid flooding output
This was overloading the reckless-rpc plugin input when outputting
json all in one shot. The verbosity was mostly dependency resolution
which wasn't all that helpful so call uv pip install as normal.

Changelog-None: bug introduced this release.
2025-08-18 14:04:48 +09:30
Alex Myers
b2ff500cce reckless: store source locations as correct type 2025-08-18 14:04:48 +09:30
Alex Myers
ebbe5a274d reckless: add uv installer support for legacy projects
Those that only have a requirements.txt can be installed
with uv even if it's not managing the project requirements.
2025-08-12 09:28:21 +09:30
Alex Myers
1bb809a6e2 reckless: add uv python env installation method
uv is a python installation and package manager written in
rust.  We can use it to quickly install python package
dependencies and configure our plugin's python virtual environment.
To maintain consistency with our other reckless python
installations, the venv is still activated in a wrapper which then
imports the original python source.

Changelog-added: reckless can now install python plugins using the uv package manager.
2025-08-12 09:28:21 +09:30
Alex Myers
0364282eb2 reckless: correct direct install from local repo subdirectory 2025-08-12 09:28:21 +09:30
Alex Myers
bd26f726f1 reckless: fix installer search
Some installer procedures have more options for valid entypoint
names than others. We iterate through each of their first choices,
then their second choices, etc..
2025-08-12 09:28:21 +09:30
Alex Myers
2b8b709bfd meta: update changelog for v25.05
Changelog-None
2025-06-16 13:10:33 -05:00
Alex Myers
8d6ae149ff release: update version for 25.05rc1
Changelog-None
2025-05-19 14:12:55 -05:00
Alex Myers
70fa1a4b5a reckless: don't update a plugin if a specific tag was previously installed 2025-05-14 13:02:03 +09:30
Alex Myers
45d83aa01e reckless: don't return error if update is unnecessary 2025-05-14 13:02:03 +09:30
Alex Myers
666284d51f reckless: only proceed with update when appropriate 2025-05-14 13:02:03 +09:30
Alex Myers
cf767654ad reckless: return result from update 2025-05-14 13:02:03 +09:30
Alex Myers
eab84603ae reckless: provide user feedback at info level if enable fails 2025-05-14 13:02:03 +09:30
Alex Myers
741611b9a9 reckless: add update command
This updates all reckless-installed plugins with `reckless update` or
update individual plugins by passing the plugin names as arguments.

The metadata stored with the installed plugin is used to find the
plugin from the appropriate source (the same source is used as when
originally installed.)

Changelog-Added: Reckless: `reckless update` updates all reckless-installed plugins.
2025-05-14 13:02:03 +09:30
Alex Myers
f51fbc9459 reckless: refactor install
remove the duplicative search and extract the enable portion for use next.
2025-05-14 13:02:03 +09:30
Alex Myers
1401484ba0 reckless: store absolute paths in metadata 2025-05-14 13:02:03 +09:30
Alex Myers
e9d8397c72 reckless: handle a direct source in the form of a git repo url 2025-05-14 13:02:03 +09:30
Alex Myers
3e468be1ae reckless: accept a full local path as source+name
This allows installing a local plugin directly without having
to modify reckless sources.

Changelog-changed: Reckless can be passed a local file or directory for installation.
2025-05-14 13:02:03 +09:30
Alex Myers
884ab8e616 reckless: fix installation from local directories with subpaths
This could previously copy the parent directory of a plugin
into the installed reckless directory, which was unnecessary.
2025-05-14 13:02:03 +09:30
Alex Myers
e96af42947 meta: update changelog for 25.02
Changelog-None
2025-02-24 16:06:41 -06:00
ShahanaFarooqui
24e0929c0e tools: Add testnet4 support for reckless and hsmtool
Changelog-Added: Support for Bitcoin `testnet4`
2025-01-13 15:45:19 -08:00
Alex Myers
48258ecb31 reckless: correct logging levels
Some output was hidden under normal operation which should
not have been.
2024-08-08 11:33:39 +09:30
Alex Myers
fe58c731ed reckless: escape strings in log 2024-08-08 11:33:39 +09:30
Alex Myers
9a7481b532 reckless: handle failure to find entrypoint cleanly 2024-08-08 11:33:39 +09:30
Alex Myers
dff7b50040 reckless: handle other --json cases without crashing 2024-08-08 11:33:39 +09:30
Alex Myers
efd67b36f0 reckless: handle unresolvable situations in a --json friendly way 2024-08-08 11:33:39 +09:30
Alex Myers
4aef72648c reckless: accept json array arguments as input
Changelog-Added: Reckless: accepts json array input for command targets
2024-08-08 11:33:39 +09:30
Alex Myers
1ac6e25ffd reckless: don't polute stdout with python install
status if --json was requested.
2024-08-08 11:33:39 +09:30
Alex Myers
bb47bc1d4a reckless: all command functions return objects to enable json out
This more easily allows list output for commands accepting list
input, i.e., installing 3 plugins produces 3 outputs.
2024-08-08 11:33:39 +09:30
Alex Myers
a2e458047f reckless: add json output option
Also redirect config creation prompts to stderr in order to not interfere
with json output on stdout.

Changelog-Added: reckless provides json output with option flag -j/--json
2024-08-08 11:33:39 +09:30
Alex Myers
75d8d8b91f reckless: add logger class
This will allow redirection of json output in the following commits.
2024-08-08 11:33:39 +09:30
Alex Myers
40c24065f7 reckless: make options flags position independent
Changelog-Changed: Reckless option flags are now position independent.
2024-08-08 11:33:39 +09:30
Alex Myers
0a6c58133d reckless: add version information to reckless 2024-08-08 11:33:39 +09:30
Alex Myers
9cbaafb525 reckless: add installer for rust plugins
This follows the same structure that enables python virtual environments:
  reckless/
    <plugin_name>/
      <symlink to compiled bin>
      source/
        <clone of original source plugin dir>/

Changelog-Added: Reckless: added the ability to install rust plugins.
2024-08-08 11:33:39 +09:30
Alex Myers
ed2c0ae18f reckless: place source code in source/plugin_name/
rather than just source/.  This is required for cargo install, so let's just
use this paradigm globally.
2024-08-08 11:33:39 +09:30
Alex Myers
c1d46d6ef9 reckless: add type hints for InstInfo 2024-08-08 11:33:39 +09:30
Alex Myers
7387c9cb1f reckless: remove mimetype
The python mimetype package wasn't useful enough in indentifying
filetypes anyhow.
2024-08-08 11:33:39 +09:30
Rusty Russell
fd9975c288 reckless: don't use time-based directories.
This always fails on my test machine, which runs many tests in parallel.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2024-06-24 21:12:43 +09:30
Alex Myers
5c475067b8 reckless: populate local submodules for searching
Git ls-tree does not report submodule contents which was not previously
accounted for.
2024-02-21 14:33:11 +01:00
Alex Myers
538b4c850e reckless: prefer to search a local copy of a remote source
If it has already been cloned, this is less problematic than
using the github rest API.
2024-02-21 14:33:11 +01:00
Alex Myers
bfb29aaef0 reckless: Clone github sources when API access fails
Due to the API ratelimit, this allows cloning a github repo and searching
the result rather than searching via the REST API.  If a source has
already been cloned, it is fetched and the default branch checked out.

Fixes a failure reported by @farscapian

Changelog-Fixed: Reckless no longer fails on github API ratelimit.
2024-02-21 14:33:11 +01:00
Alex Myers
ba9ec412c7 reckless: set relative path of local git repo directories 2024-02-21 14:33:11 +01:00
Alex Myers
47c81995e3 reckless: initialize repos with submodules and other cleanup 2024-02-21 14:33:11 +01:00
Alex Myers
61bbd70bc7 reckless: reduce github API calls
Github API calls are now ratelimited to 60 per hour.  Searching through
the subdirectory contents of lightningd/plugins will hit this limit after
two searches or installs.  The simple answer is to look for the directory
rather than verifying a valid entrypoint in a suitably-named directory
prior to cloning the repository.

Also corrects a bug that was flagging submodules as files while
populating directory contents.
2024-02-21 14:33:11 +01:00