From 99421e384c78d518749056f629e38e8320b4fba1 Mon Sep 17 00:00:00 2001 From: Matt Corallo Date: Fri, 25 Jul 2025 11:31:44 +0000 Subject: [PATCH 1/3] [C#] Update auto-generated bindings to LDK 0.1.5.0 (w/ Testnet4) --- c_sharp/bindings.c | 14 ++++++++------ c_sharp/bindings.c.body | 14 ++++++++------ c_sharp/src/org/ldk/enums/Network.cs | 6 +++++- 3 files changed, 21 insertions(+), 13 deletions(-) diff --git a/c_sharp/bindings.c b/c_sharp/bindings.c index 2a1efdc6d..7cc6510d5 100644 --- a/c_sharp/bindings.c +++ b/c_sharp/bindings.c @@ -773,18 +773,20 @@ static inline int32_t LDKLevel_to_cs(LDKLevel val) { static inline LDKNetwork LDKNetwork_from_cs(int32_t ord) { switch (ord) { case 0: return LDKNetwork_Bitcoin; - case 1: return LDKNetwork_Testnet; - case 2: return LDKNetwork_Regtest; - case 3: return LDKNetwork_Signet; + case 1: return LDKNetwork_Testnet3; + case 2: return LDKNetwork_Testnet4; + case 3: return LDKNetwork_Regtest; + case 4: return LDKNetwork_Signet; default: abort(); } } static inline int32_t LDKNetwork_to_cs(LDKNetwork val) { switch (val) { case LDKNetwork_Bitcoin: return 0; - case LDKNetwork_Testnet: return 1; - case LDKNetwork_Regtest: return 2; - case LDKNetwork_Signet: return 3; + case LDKNetwork_Testnet3: return 1; + case LDKNetwork_Testnet4: return 2; + case LDKNetwork_Regtest: return 3; + case LDKNetwork_Signet: return 4; default: abort(); } } diff --git a/c_sharp/bindings.c.body b/c_sharp/bindings.c.body index bd909e066..8b620c71b 100644 --- a/c_sharp/bindings.c.body +++ b/c_sharp/bindings.c.body @@ -769,18 +769,20 @@ static inline int32_t LDKLevel_to_cs(LDKLevel val) { static inline LDKNetwork LDKNetwork_from_cs(int32_t ord) { switch (ord) { case 0: return LDKNetwork_Bitcoin; - case 1: return LDKNetwork_Testnet; - case 2: return LDKNetwork_Regtest; - case 3: return LDKNetwork_Signet; + case 1: return LDKNetwork_Testnet3; + case 2: return LDKNetwork_Testnet4; + case 3: return LDKNetwork_Regtest; + case 4: return LDKNetwork_Signet; default: abort(); } } static inline int32_t LDKNetwork_to_cs(LDKNetwork val) { switch (val) { case LDKNetwork_Bitcoin: return 0; - case LDKNetwork_Testnet: return 1; - case LDKNetwork_Regtest: return 2; - case LDKNetwork_Signet: return 3; + case LDKNetwork_Testnet3: return 1; + case LDKNetwork_Testnet4: return 2; + case LDKNetwork_Regtest: return 3; + case LDKNetwork_Signet: return 4; default: abort(); } } diff --git a/c_sharp/src/org/ldk/enums/Network.cs b/c_sharp/src/org/ldk/enums/Network.cs index 3379da08f..8c53ae1c2 100644 --- a/c_sharp/src/org/ldk/enums/Network.cs +++ b/c_sharp/src/org/ldk/enums/Network.cs @@ -9,7 +9,11 @@ public enum Network { /** * The testnet3 blockchain. */ - LDKNetwork_Testnet, + LDKNetwork_Testnet3, + /** + * The testnet4 blockchain. + */ + LDKNetwork_Testnet4, /** * A local test blockchain. */ From 68f290c3678fc8df6707696e67e776837ef8e0ad Mon Sep 17 00:00:00 2001 From: Matt Corallo Date: Fri, 25 Jul 2025 11:32:11 +0000 Subject: [PATCH 2/3] [Java] Update auto-generated bindings to LDK 0.1.5.0 (w/ Testnet4) --- src/main/java/org/ldk/enums/Network.java | 6 +++++- src/main/jni/bindings.c | 22 ++++++++++++++-------- src/main/jni/bindings.c.body | 16 ++++++++++------ 3 files changed, 29 insertions(+), 15 deletions(-) diff --git a/src/main/java/org/ldk/enums/Network.java b/src/main/java/org/ldk/enums/Network.java index bcab211d5..a82ed2a7d 100644 --- a/src/main/java/org/ldk/enums/Network.java +++ b/src/main/java/org/ldk/enums/Network.java @@ -11,7 +11,11 @@ public enum Network { /** * The testnet3 blockchain. */ - LDKNetwork_Testnet, + LDKNetwork_Testnet3, + /** + * The testnet4 blockchain. + */ + LDKNetwork_Testnet4, /** * A local test blockchain. */ diff --git a/src/main/jni/bindings.c b/src/main/jni/bindings.c index 72dc76c90..3cb49190f 100644 --- a/src/main/jni/bindings.c +++ b/src/main/jni/bindings.c @@ -1339,16 +1339,18 @@ static inline LDKNetwork LDKNetwork_from_java(JNIEnv *env, jclass clz) { } switch (ord) { case 0: return LDKNetwork_Bitcoin; - case 1: return LDKNetwork_Testnet; - case 2: return LDKNetwork_Regtest; - case 3: return LDKNetwork_Signet; + case 1: return LDKNetwork_Testnet3; + case 2: return LDKNetwork_Testnet4; + case 3: return LDKNetwork_Regtest; + case 4: return LDKNetwork_Signet; } (*env)->FatalError(env, "A call to Network.ordinal() from rust returned an invalid value."); abort(); // Unreachable, but will let the compiler know we don't return here } static jclass Network_class = NULL; static jfieldID Network_LDKNetwork_Bitcoin = NULL; -static jfieldID Network_LDKNetwork_Testnet = NULL; +static jfieldID Network_LDKNetwork_Testnet3 = NULL; +static jfieldID Network_LDKNetwork_Testnet4 = NULL; static jfieldID Network_LDKNetwork_Regtest = NULL; static jfieldID Network_LDKNetwork_Signet = NULL; JNIEXPORT void JNICALL Java_org_ldk_enums_Network_init (JNIEnv *env, jclass clz) { @@ -1356,8 +1358,10 @@ JNIEXPORT void JNICALL Java_org_ldk_enums_Network_init (JNIEnv *env, jclass clz) CHECK(Network_class != NULL); Network_LDKNetwork_Bitcoin = (*env)->GetStaticFieldID(env, Network_class, "LDKNetwork_Bitcoin", "Lorg/ldk/enums/Network;"); CHECK(Network_LDKNetwork_Bitcoin != NULL); - Network_LDKNetwork_Testnet = (*env)->GetStaticFieldID(env, Network_class, "LDKNetwork_Testnet", "Lorg/ldk/enums/Network;"); - CHECK(Network_LDKNetwork_Testnet != NULL); + Network_LDKNetwork_Testnet3 = (*env)->GetStaticFieldID(env, Network_class, "LDKNetwork_Testnet3", "Lorg/ldk/enums/Network;"); + CHECK(Network_LDKNetwork_Testnet3 != NULL); + Network_LDKNetwork_Testnet4 = (*env)->GetStaticFieldID(env, Network_class, "LDKNetwork_Testnet4", "Lorg/ldk/enums/Network;"); + CHECK(Network_LDKNetwork_Testnet4 != NULL); Network_LDKNetwork_Regtest = (*env)->GetStaticFieldID(env, Network_class, "LDKNetwork_Regtest", "Lorg/ldk/enums/Network;"); CHECK(Network_LDKNetwork_Regtest != NULL); Network_LDKNetwork_Signet = (*env)->GetStaticFieldID(env, Network_class, "LDKNetwork_Signet", "Lorg/ldk/enums/Network;"); @@ -1367,8 +1371,10 @@ static inline jclass LDKNetwork_to_java(JNIEnv *env, LDKNetwork val) { switch (val) { case LDKNetwork_Bitcoin: return (*env)->GetStaticObjectField(env, Network_class, Network_LDKNetwork_Bitcoin); - case LDKNetwork_Testnet: - return (*env)->GetStaticObjectField(env, Network_class, Network_LDKNetwork_Testnet); + case LDKNetwork_Testnet3: + return (*env)->GetStaticObjectField(env, Network_class, Network_LDKNetwork_Testnet3); + case LDKNetwork_Testnet4: + return (*env)->GetStaticObjectField(env, Network_class, Network_LDKNetwork_Testnet4); case LDKNetwork_Regtest: return (*env)->GetStaticObjectField(env, Network_class, Network_LDKNetwork_Regtest); case LDKNetwork_Signet: diff --git a/src/main/jni/bindings.c.body b/src/main/jni/bindings.c.body index fea535c0e..0882a8cc2 100644 --- a/src/main/jni/bindings.c.body +++ b/src/main/jni/bindings.c.body @@ -1335,16 +1335,18 @@ static inline LDKNetwork LDKNetwork_from_java(JNIEnv *env, jclass clz) { } switch (ord) { case 0: return LDKNetwork_Bitcoin; - case 1: return LDKNetwork_Testnet; - case 2: return LDKNetwork_Regtest; - case 3: return LDKNetwork_Signet; + case 1: return LDKNetwork_Testnet3; + case 2: return LDKNetwork_Testnet4; + case 3: return LDKNetwork_Regtest; + case 4: return LDKNetwork_Signet; } (*env)->FatalError(env, "A call to Network.ordinal() from rust returned an invalid value."); abort(); // Unreachable, but will let the compiler know we don't return here } static jclass Network_class = NULL; static jfieldID Network_LDKNetwork_Bitcoin = NULL; -static jfieldID Network_LDKNetwork_Testnet = NULL; +static jfieldID Network_LDKNetwork_Testnet3 = NULL; +static jfieldID Network_LDKNetwork_Testnet4 = NULL; static jfieldID Network_LDKNetwork_Regtest = NULL; static jfieldID Network_LDKNetwork_Signet = NULL; JNIEXPORT void JNICALL Java_org_ldk_enums_Network_init (JNIEnv *env, jclass clz) { @@ -1363,8 +1365,10 @@ static inline jclass LDKNetwork_to_java(JNIEnv *env, LDKNetwork val) { switch (val) { case LDKNetwork_Bitcoin: return (*env)->GetStaticObjectField(env, Network_class, Network_LDKNetwork_Bitcoin); - case LDKNetwork_Testnet: - return (*env)->GetStaticObjectField(env, Network_class, Network_LDKNetwork_Testnet); + case LDKNetwork_Testnet3: + return (*env)->GetStaticObjectField(env, Network_class, Network_LDKNetwork_Testnet3); + case LDKNetwork_Testnet4: + return (*env)->GetStaticObjectField(env, Network_class, Network_LDKNetwork_Testnet4); case LDKNetwork_Regtest: return (*env)->GetStaticObjectField(env, Network_class, Network_LDKNetwork_Regtest); case LDKNetwork_Signet: From adb110327a4990be2290036b3860baec5875ffc6 Mon Sep 17 00:00:00 2001 From: Matt Corallo Date: Fri, 25 Jul 2025 12:24:10 +0000 Subject: [PATCH 3/3] [TS] Update auto-generated bindings + use new Testnet enums in test --- ts/bindings.c | 14 ++++++++------ ts/bindings.c.body | 14 ++++++++------ ts/bindings.mts | 6 +++++- ts/test/tests.mts | 6 +++--- 4 files changed, 24 insertions(+), 16 deletions(-) diff --git a/ts/bindings.c b/ts/bindings.c index 4f8c4236f..9b2f9c98d 100644 --- a/ts/bindings.c +++ b/ts/bindings.c @@ -566,18 +566,20 @@ static inline int32_t LDKLevel_to_js(LDKLevel val) { static inline LDKNetwork LDKNetwork_from_js(int32_t ord) { switch (ord) { case 0: return LDKNetwork_Bitcoin; - case 1: return LDKNetwork_Testnet; - case 2: return LDKNetwork_Regtest; - case 3: return LDKNetwork_Signet; + case 1: return LDKNetwork_Testnet3; + case 2: return LDKNetwork_Testnet4; + case 3: return LDKNetwork_Regtest; + case 4: return LDKNetwork_Signet; } abort(); } static inline int32_t LDKNetwork_to_js(LDKNetwork val) { switch (val) { case LDKNetwork_Bitcoin: return 0; - case LDKNetwork_Testnet: return 1; - case LDKNetwork_Regtest: return 2; - case LDKNetwork_Signet: return 3; + case LDKNetwork_Testnet3: return 1; + case LDKNetwork_Testnet4: return 2; + case LDKNetwork_Regtest: return 3; + case LDKNetwork_Signet: return 4; default: abort(); } } diff --git a/ts/bindings.c.body b/ts/bindings.c.body index c97968477..b2e5fcd15 100644 --- a/ts/bindings.c.body +++ b/ts/bindings.c.body @@ -564,18 +564,20 @@ static inline int32_t LDKLevel_to_js(LDKLevel val) { static inline LDKNetwork LDKNetwork_from_js(int32_t ord) { switch (ord) { case 0: return LDKNetwork_Bitcoin; - case 1: return LDKNetwork_Testnet; - case 2: return LDKNetwork_Regtest; - case 3: return LDKNetwork_Signet; + case 1: return LDKNetwork_Testnet3; + case 2: return LDKNetwork_Testnet4; + case 3: return LDKNetwork_Regtest; + case 4: return LDKNetwork_Signet; } abort(); } static inline int32_t LDKNetwork_to_js(LDKNetwork val) { switch (val) { case LDKNetwork_Bitcoin: return 0; - case LDKNetwork_Testnet: return 1; - case LDKNetwork_Regtest: return 2; - case LDKNetwork_Signet: return 3; + case LDKNetwork_Testnet3: return 1; + case LDKNetwork_Testnet4: return 2; + case LDKNetwork_Regtest: return 3; + case LDKNetwork_Signet: return 4; default: abort(); } } diff --git a/ts/bindings.mts b/ts/bindings.mts index ef660ba39..7d043a23d 100644 --- a/ts/bindings.mts +++ b/ts/bindings.mts @@ -1056,7 +1056,11 @@ export enum Network { /** * The testnet3 blockchain. */ - LDKNetwork_Testnet, + LDKNetwork_Testnet3, + /** + * The testnet4 blockchain. + */ + LDKNetwork_Testnet4, /** * A local test blockchain. */ diff --git a/ts/test/tests.mts b/ts/test/tests.mts index 7e0c9fda9..6b12f1961 100644 --- a/ts/test/tests.mts +++ b/ts/test/tests.mts @@ -106,14 +106,14 @@ function get_chanman(): Node { seed_counter++; const keys_manager = ldk.KeysManager.constructor_new(seed, BigInt(42), 42); - const net_graph = ldk.NetworkGraph.constructor_new(ldk.Network.LDKNetwork_Testnet, logger); + const net_graph = ldk.NetworkGraph.constructor_new(ldk.Network.LDKNetwork_Testnet4, logger); const scorer = ldk.ProbabilisticScorer.constructor_new(ldk.ProbabilisticScoringDecayParameters.constructor_default(), net_graph, logger); const lockable_score = ldk.MultiThreadedLockableScore.constructor_new(scorer.as_Score()); const router = ldk.DefaultRouter.constructor_new(net_graph, logger, keys_manager.as_EntropySource(), lockable_score.as_LockableScore(), ldk.ProbabilisticScoringFeeParameters.constructor_default()); const msg_router = ldk.DefaultMessageRouter.constructor_new(net_graph, keys_manager.as_EntropySource()); const config = ldk.UserConfig.constructor_default(); - const params = ldk.ChainParameters.constructor_new(ldk.Network.LDKNetwork_Testnet, ldk.BestBlock.constructor_from_network(ldk.Network.LDKNetwork_Testnet)); + const params = ldk.ChainParameters.constructor_new(ldk.Network.LDKNetwork_Testnet4, ldk.BestBlock.constructor_from_network(ldk.Network.LDKNetwork_Testnet4)); const chan_man = ldk.ChannelManager.constructor_new(fee_est, chain_watch, tx_broadcaster!, router.as_Router(), msg_router.as_MessageRouter(), logger, keys_manager.as_EntropySource(), keys_manager.as_NodeSigner(), keys_manager.as_SignerProvider(), config, params, 42); @@ -489,7 +489,7 @@ tests.push(async () => { console.log(record.get_module_path() + ": " + record.get_args()); } } as ldk.LoggerInterface); - const network_graph = ldk.NetworkGraph.constructor_new(ldk.Network.LDKNetwork_Testnet, logger); + const network_graph = ldk.NetworkGraph.constructor_new(ldk.Network.LDKNetwork_Testnet4, logger); const graph_lock_1 = network_graph.read_only(); graph_lock_1.free(); const graph_lock_2 = network_graph.read_only();