cln4rust

Crate that provides an RPC binding from rust code to the c-lightning daemon

CC0-1.0 License

Downloads
8.4K
Stars
63
Committers
14

Bot releases are hidden (Show)

cln4rust - rpc-v0.3.0-beta.8 Latest Release

Published by vincenzopalazzo about 1 year ago

v0.3.0-beta.8

Fixed

  • update msat on Pay response (commit). @lvaccaro 24-08-2023

v0.3.0-beta.7

Fixed

  • re-export lightningrpc::Error (commit). @vincenzopalazzo 24-08-2023
cln4rust - plugin-macros-v0.3.0-beta.4

Published by vincenzopalazzo over 1 year ago

Added

  • add plugin macros to declare a plugin easily. (commit). @vincenzopalazzo 13-06-2023

Now it is possible make a plugin with the following code

use serde_json::json;
use serde_json::Value;

use clightningrpc_plugin_macros::*;
use clightningrpc_plugin::commands::RPCCommand;
use clightningrpc_plugin::errors::PluginError;
use clightningrpc_plugin::plugin::Plugin;

#[derive(Clone)]
struct State;

// FIXME: implement a derive macros to register
// the option plugins
impl State {
    pub fn new() -> Self {
        Self
    }
}

#[rpc_method(
    rpc_name = "foo_macro",
    description = "This is a simple and short description"
)]
pub fn foo_rpc(plugin: &mut Plugin<State>, request: Value) -> Result<Value, PluginError> {
    let response = json!({"is_dynamic": plugin.dynamic, "rpc_request": request});
    Ok(response)
}

#[notification(on = "rpc_command")]
fn on_rpc(plugin: &mut Plugin<State>, request: &Value) {
    use clightningrpc_plugin::types::LogLevel;
    plugin.log(LogLevel::Info, "received an RPC notification");
}

fn main() {
    let plugin = plugin! {
        state: State::new(),
        dynamic: true,
        notification: [
            on_rpc,
        ],
        methods: [
            foo_rpc,
        ],
        hooks: [],
    };
    plugin.start();
}
cln4rust - conf-v0.0.3

Published by vincenzopalazzo over 1 year ago

conf-v0.0.3

Fixed

  • fix the ambigity when we get a list of confs (commit). @vincenzopalazzo 23-05-2023
cln4rust - conf-v0.0.2

Published by vincenzopalazzo over 1 year ago

conf-v0.0.2

Fixed

  • allow the conf to be sync and send (commit). @vincenzopalazzo 17-04-2023

Added

  • add method to remove a key value pair from the configuration (commit). @tareknaser360 17-04-2023
  • add method to lookup inside the configuration (commit). @vincenzopalazzo 16-04-2023
cln4rust - rpc-v0.3.0-beta.5

Published by vincenzopalazzo over 1 year ago

v0.3.0-beta.5

Fixed

  • add preimage in invoice (commit). @evd0kim 10-03-2023
  • route model update (commit). @evd0kim 10-03-2023
  • listchannels update (commit). @evd0kim 10-03-2023

Added

  • support createinvoice model (commit). @evd0kim 10-03-2023
cln4rust - conf-v0.0.1

Published by vincenzopalazzo over 1 year ago

v0.0.1

Fixed

  • do not allow duplicate fields (commit). @vincenzopalazzo 24-02-2023
  • include complex case for the parser (commit). @vincenzopalazzo 24-02-2023
  • take into count inclue and comments (commit). @vincenzopalazzo 24-02-2023
  • allow to specify create_if_missing (commit). @vincenzopalazzo 24-02-2023
cln4rust - plugin-v0.3.0-beta.7

Published by vincenzopalazzo almost 2 years ago

plugin-v0.3.0-beta.7

Added

  • support binding options from init method (commit). @vincenzopalazzo 07-01-2023
cln4rust - conf-v0.0.1-alpha.2

Published by vincenzopalazzo almost 2 years ago

These are the complete list of craters supported right now

Crate Description Version
clightningrpc-common Crate that provides an Generic RPC binding from rust code to the core lightning daemon Crates.io
clightningrpc Crate that provides a strong typed RPC binding from rust code to the core lightning daemon Crates.io
clightningrpc-plugin Crate that provides a plugin API to give the possibility to implement a plugin in Rust Crates.io
clightningrpc-plugin-macros Crate that provides a procedural macros implementation to make easy to develop a plugin developer to build a plugin Crates.io
clightningrpc-conf This crate provides configuration manager for core lightning. Crates.io

Crate Changelogs

conf-v0.0.1-alpha.2

Fixed

  • fix clippy report (commit). @vincenzopalazzo 05-01-2023
  • make sure that all the fileds are included (commit). @vincenzopalazzo 05-01-2023

Added

  • add way to flush a new conf inside a file (commit). @vincenzopalazzo 05-01-2023
cln4rust - conf-v0.0.1-alpha.1

Published by vincenzopalazzo almost 2 years ago

These are the complete list of craters supported right now

Crate Description Version
clightningrpc-common Crate that provides an Generic RPC binding from rust code to the core lightning daemon Crates.io
clightningrpc Crate that provides a strong typed RPC binding from rust code to the core lightning daemon Crates.io
clightningrpc-plugin Crate that provides a plugin API to give the possibility to implement a plugin in Rust Crates.io
clightningrpc-plugin-macros Crate that provides a procedural macros implementation to make easy to develop a plugin developer to build a plugin Crates.io
clightningrpc-conf This crate provides configuration manager for core lightning. Crates.io

Crate Changelogs

conf-v0.0.1-alpha.1

Added

  • add cln conf parser crate (commit). @vincenzopalazzo 05-01-2023
cln4rust - rpc-v0.3.0-beta.4

Published by vincenzopalazzo almost 2 years ago

These are the complete list of craters supported right now

Crate Description Version
clightningrpc-common Crate that provides an Generic RPC binding from rust code to the core lightning daemon Crates.io
clightningrpc Crate that provides a strong typed RPC binding from rust code to the core lightning daemon Crates.io
clightningrpc-plugin Crate that provides a plugin API to give the possibility to implement a plugin in Rust Crates.io
clightningrpc-plugin-macros Crate that provides a procedural macros implementation to make easy to develop a plugin developer to build a plugin Crates.io

Crate Changelogs

v0.3.0-beta.4

Fixed

  • fix tests assertions (commit). @vincenzopalazzo 21-11-2022
  • move the invoice field from msatoshi to amount_msat (commit). @vincenzopalazzo 21-11-2022
  • be able to generate invoice with any amount (commit). @engenegr 21-11-2022
cln4rust - plugin-v0.3.0-beta.6

Published by vincenzopalazzo almost 2 years ago

These are the complete list of craters supported right now

Crate Description Version
clightningrpc-common Crate that provides an Generic RPC binding from rust code to the core lightning daemon Crates.io
clightningrpc Crate that provides a strong typed RPC binding from rust code to the core lightning daemon Crates.io
clightningrpc-plugin Crate that provides a plugin API to give the possibility to implement a plugin in Rust Crates.io
clightningrpc-plugin-macros Crate that provides a procedural macros implementation to make easy to develop a plugin developer to build a plugin Crates.io

Crate Changelogs

Fixed

  • API msg field plugin error (commit). @vincenzopalazzo 18-11-2022
  • make plugin error API public (commit). @vincenzopalazzo 18-11-2022
cln4rust - common-v0.3.0-beta.3

Published by vincenzopalazzo almost 2 years ago

These are the complete list of craters supported right now

Crate Description Version
clightningrpc-common Crate that provides an Generic RPC binding from rust code to the core lightning daemon Crates.io
clightningrpc Crate that provides a strong typed RPC binding from rust code to the core lightning daemon Crates.io
clightningrpc-plugin Crate that provides a plugin API to give the possibility to implement a plugin in Rust Crates.io
clightningrpc-plugin-macros Crate that provides a procedural macros implementation to make easy to develop a plugin developer to build a plugin Crates.io

Crate Changelogs

Fixed

  • move the json_utils inside from plugin to common crate (commit). @swaptr 27-10-2022
cln4rust - rpc-v0.3.0-beta.3

Published by vincenzopalazzo about 2 years ago

These are the complete list of craters supported right now

Crate Description Version
clightningrpc-common Crate that provides an Generic RPC binding from rust code to the core lightning daemon Crates.io
clightningrpc Crate that provides a strong typed RPC binding from rust code to the core lightning daemon Crates.io
clightningrpc-plugin Crate that provides a plugin API to give the possibility to implement a plugin in Rust Crates.io
clightningrpc-plugin-macros Crate that provides a procedural macros implementation to make easy to develop a plugin developer to build a plugin Crates.io

Crate Changelogs

clightningrpc

v0.3.0-beta.3

Fixed

  • MSat accepts both strings ending with msat and u64 (commit). @RCasatta 06-09-2022

Added

  • Make generic fn call pub (commit). @RCasatta 06-09-2022
cln4rust - plugin-v0.3.0-beta.5

Published by vincenzopalazzo about 2 years ago

These are the complete list of craters supported right now

Crate Description Version
clightningrpc-common Crate that provides an Generic RPC binding from rust code to the core lightning daemon Crates.io
clightningrpc Crate that provides a strong typed RPC binding from rust code to the core lightning daemon Crates.io
clightningrpc-plugin Crate that provides a plugin API to give the possibility to implement a plugin in Rust Crates.io
clightningrpc-plugin-macros Crate that provides a procedural macros implementation to make easy to develop a plugin developer to build a plugin Crates.io

Crate Changelogs

clightningrpc-plugin

Fixed

  • expose plugin state as public (commit). @vincenzopalazzo 03-09-2022

Added

  • allow method chaining before startup (commit). @vincenzopalazzo 03-09-2022
cln4rust - v0.3.0-beta.4

Published by vincenzopalazzo about 2 years ago

These are the complete list of craters supported right now

Crate Description Version
clightningrpc-common Crate that provides an Generic RPC binding from rust code to the core lightning daemon Crates.io
clightningrpc Crate that provides a strong typed RPC binding from rust code to the core lightning daemon Crates.io
clightningrpc-plugin Crate that provides a plugin API to give the possibility to implement a plugin in Rust Crates.io
clightningrpc-plugin-macros Crate that provides a procedural macros implementation to make easy to develop a plugin developer to build a plugin Crates.io

Crate Changelogs

clightningrpc-plugin

Added

  • store configuration inside the plugin (commit). @vincenzopalazzo 01-09-2022
  • add possibility to register on init (commit). @vincenzopalazzo 01-09-2022
cln4rust - plugin-v0.3.0-beta.3

Published by vincenzopalazzo about 2 years ago

These are the complete list of craters supported right now

Crate Description Version
clightningrpc-common Crate that provides an Generic RPC binding from rust code to the core lightning daemon Crates.io
clightningrpc Crate that provides a strong typed RPC binding from rust code to the core lightning daemon Crates.io
clightningrpc-plugin Crate that provides a plugin API to give the possibility to implement a plugin in Rust Crates.io
clightningrpc-plugin-macros Crate that provides a procedural macros implementation to make easy to develop a plugin developer to build a plugin Crates.io

Crate Changelogs

plugin-v0.3.0-beta.3

Added

  • introduce error handling (commit). @vincenzopalazzo 27-08-2022

plugin-macros-v0.3.0-beta.3

Added

  • introduce error handling (commit). @vincenzopalazzo 27-08-2022
cln4rust - v0.3.0-beta.2

Published by vincenzopalazzo about 2 years ago

These are the complete list of craters supported right now

Crate Description Version
clightningrpc-common Crate that provides an Generic RPC binding from rust code to the core lightning daemon Crates.io
clightningrpc Crate that provides a strong typed RPC binding from rust code to the core lightning daemon Crates.io
clightningrpc-plugin Crate that provides a plugin API to give the possibility to implement a plugin in Rust Crates.io
clightningrpc-plugin-macros Crate that provides a procedural macros implementation to make easy to develop a plugin developer to build a plugin Crates.io