Skip to content

Commit 412de9a

Browse files
authored
Merge pull request #124 from arik-so/arik/2023/10/118-prep-01
Prepare 0.0.118
2 parents 2abea22 + d6c92fc commit 412de9a

File tree

264 files changed

+30209
-11894
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

264 files changed

+30209
-11894
lines changed

.github/actions/install-dependencies/action.yml

+6-2
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,8 @@ runs:
2222
run: |
2323
echo `pwd`
2424
mkdir -p ${{ inputs.destination }}/bin
25-
git clone --branch 2023-07-0.0.116-java-bindings https://github.com/TheBlueMatt/rust-lightning ${{ inputs.destination }}/rust-lightning
26-
git clone --branch v0.0.116.0 https://github.com/lightningdevkit/ldk-c-bindings ${{ inputs.destination }}/ldk-c-bindings
25+
git clone --branch 0.0.118-bindings https://github.com/lightningdevkit/rust-lightning ${{ inputs.destination }}/rust-lightning
26+
git clone --branch main https://github.com/lightningdevkit/ldk-c-bindings ${{ inputs.destination }}/ldk-c-bindings
2727
- name: Install Rust, required targets
2828
if: ${{ inputs.configureRustNightly == 'true' }}
2929
shell: bash
@@ -42,6 +42,10 @@ runs:
4242
~/.cargo/git/db/
4343
target/
4444
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
45+
- name: Pin cbindgen v24
46+
shell: bash
47+
run: |
48+
cargo install --version 0.24.5 cbindgen
4549
- name: Generate C Bindings
4650
shell: bash
4751
run: |

.github/workflows/swift.yml

+9
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,11 @@ jobs:
1919
steps:
2020
- name: Checkout source code
2121
uses: actions/checkout@v3
22+
- name: Print environment versions
23+
run: |
24+
node --version
25+
npm --version
26+
yarn --version
2227
- name: Install native Rust toolchain and build utilities
2328
run: |
2429
# sudo apt-get purge grub\*
@@ -35,6 +40,10 @@ jobs:
3540
configureRustNightly: false
3641
env:
3742
LDK_SWIFT_GENERATOR_OUTPUT_DIRECTORY_PATH: ci/LDKSwift/Sources/LDKSwift/bindings
43+
- name: Print header file checksum
44+
run: sha256sum $LDK_SWIFT_GENERATOR_INPUT_HEADER_PATH
45+
env:
46+
LDK_SWIFT_GENERATOR_INPUT_HEADER_PATH: ci/ldk-c-bindings/lightning-c-bindings/include/lightning.h
3847
- name: Copy new headers into bindings
3948
run: |
4049
python3 ./scripts/copy_c_files.py

README.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ Automatic Swift bindings generation for [`rust-lightning`](https://github.com/li
77
### Swift Package Manager
88
To install using Swift Package Manager, add the following line to the depedencies array of your `Package.swift`:
99
```
10-
.package(url: "https://github.com/lightningdevkit/ldk-swift/", exact: "0.0.116")
10+
.package(url: "https://github.com/lightningdevkit/ldk-swift/", exact: "0.0.118")
1111
```
1212
Be sure to also include "LightningDevKit" into your packages target like so:
1313

@@ -58,13 +58,13 @@ In order to generate these bindings from scratch, you will need to clone two dep
5858
**[rust-lightning](https://github.com/lightningdevkit/rust-lightning)**, (a specific branch built for bindings compatibility):
5959

6060
```shell
61-
git clone --branch 2023-07-0.0.116-java-bindings https://github.com/TheBlueMatt/rust-lightning /path/to/rust-lightning
61+
git clone --branch 0.0.118-bindings https://github.com/lightningdevkit/rust-lightning /path/to/rust-lightning
6262
```
6363

6464
**[ldk-c-bindings](https://github.com/lightningdevkit/ldk-c-bindings)**:
6565

6666
```shell
67-
git clone --branch v0.0.116.0 https://github.com/lightningdevkit/ldk-c-bindings /path/to/ldk-c-bindings
67+
git clone --branch main https://github.com/lightningdevkit/ldk-c-bindings /path/to/ldk-c-bindings
6868
```
6969

7070
Take note of where you clone these directories, it's best you save the absolute path somewhere handy for the rest of the remaining steps.

ci/LDKSwift/Sources/LDKSwift/batteries/ChannelManagerConstructor.swift

+12-12
Original file line numberDiff line numberDiff line change
@@ -43,10 +43,10 @@ public struct ChannelManagerConstructionParameters {
4343
public var enableP2PGossip: Bool = false
4444
public var scorer: MultiThreadedLockableScore?
4545
public var scoreParams: ProbabilisticScoringFeeParameters?
46-
public var payerRetries: Retry = Retry.initWithAttempts(a: UInt(3))
46+
public var payerRetries: Retry = Retry.initWithAttempts(a: UInt32(3))
4747
public var logger: Logger
4848

49-
public init (config: UserConfig, entropySource: EntropySource, nodeSigner: NodeSigner, signerProvider: SignerProvider, feeEstimator: FeeEstimator, chainMonitor: ChainMonitor, txBroadcaster: BroadcasterInterface, logger: Logger, enableP2PGossip: Bool = false, scorer: MultiThreadedLockableScore? = nil, scoreParams: ProbabilisticScoringFeeParameters? = nil, payerRetries: Retry = Retry.initWithAttempts(a: UInt(3))) {
49+
public init (config: UserConfig, entropySource: EntropySource, nodeSigner: NodeSigner, signerProvider: SignerProvider, feeEstimator: FeeEstimator, chainMonitor: ChainMonitor, txBroadcaster: BroadcasterInterface, logger: Logger, enableP2PGossip: Bool = false, scorer: MultiThreadedLockableScore? = nil, scoreParams: ProbabilisticScoringFeeParameters? = nil, payerRetries: Retry = Retry.initWithAttempts(a: UInt32(3))) {
5050
self.config = config
5151
self.entropySource = entropySource
5252
self.nodeSigner = nodeSigner
@@ -134,7 +134,7 @@ public class ChannelManagerConstructor: NativeTypeWrapper {
134134
var monitorFundingSet = Set<String>()
135135

136136
for currentSerializedChannelMonitor in channelMonitorsSerialized {
137-
let channelMonitorResult: Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ = Bindings.readBlockHashChannelMonitor(ser: currentSerializedChannelMonitor, argA: params.entropySource, argB: params.signerProvider)
137+
let channelMonitorResult = Bindings.readThirtyTwoBytesChannelMonitor(ser: currentSerializedChannelMonitor, argA: params.entropySource, argB: params.signerProvider)
138138

139139
guard let (blockHash, channelMonitor) = channelMonitorResult.getValue() else {
140140
throw InvalidSerializedDataError.invalidSerializedChannelMonitor
@@ -170,8 +170,8 @@ public class ChannelManagerConstructor: NativeTypeWrapper {
170170
// TODO: figure out better way to obtain a router
171171
let router = params.router(networkGraph: self.netGraph)
172172
let channelManagerReadArgs = ChannelManagerReadArgs(entropySource: params.entropySource, nodeSigner: params.nodeSigner, signerProvider: params.signerProvider, feeEstimator: params.feeEstimator, chainMonitor: params.chainMonitor.asWatch(), txBroadcaster: params.txBroadcaster, router: router, logger: params.logger, defaultConfig: params.config, channelMonitors: monitors)
173-
174-
guard let (latestBlockHash, channelManager) = Bindings.readBlockHashChannelManager(ser: channelManagerSerialized, arg: channelManagerReadArgs).getValue() else {
173+
174+
guard let (latestBlockHash, channelManager) = Bindings.readThirtyTwoBytesChannelManager(ser: channelManagerSerialized, arg: channelManagerReadArgs).getValue() else {
175175
throw InvalidSerializedDataError.invalidSerializedChannelManager
176176
}
177177

@@ -281,7 +281,7 @@ public class ChannelManagerConstructor: NativeTypeWrapper {
281281
let (outPoint, _) = currentChannelMonitor.getFundingTxo()
282282
print("watching channel")
283283
let monitorWatchResult = chainMonitorWatch.watchChannel(fundingTxo: outPoint, monitor: currentChannelMonitor)
284-
if monitorWatchResult != .Completed {
284+
if !monitorWatchResult.isOk() || monitorWatchResult.getValue() != .Completed {
285285
Bindings.print("Some issue occurred with a chainMonitorWatch.watch_channel call: \(monitorWatchResult)", severity: .WARNING)
286286
}
287287
// monitorClone.cType?.is_owned = true
@@ -360,16 +360,16 @@ fileprivate class CustomChannelManagerPersister: Persister {
360360
self.handler = handler
361361
super.init()
362362
}
363-
364-
override func persistManager(channelManager: Bindings.ChannelManager) -> Bindings.Result_NoneErrorZ {
363+
364+
override func persistManager(channelManager: Bindings.ChannelManager) -> Bindings.Result_NoneIOErrorZ {
365365
return self.handler.persistManager(channelManager: channelManager)
366366
}
367-
368-
override func persistGraph(networkGraph: Bindings.NetworkGraph) -> Bindings.Result_NoneErrorZ {
367+
368+
override func persistGraph(networkGraph: Bindings.NetworkGraph) -> Bindings.Result_NoneIOErrorZ {
369369
return self.handler.persistGraph(networkGraph: networkGraph)
370370
}
371-
372-
override func persistScorer(scorer: Bindings.WriteableScore) -> Bindings.Result_NoneErrorZ {
371+
372+
override func persistScorer(scorer: Bindings.WriteableScore) -> Bindings.Result_NoneIOErrorZ {
373373
return self.handler.persistScorer(scorer: scorer)
374374
}
375375
}

0 commit comments

Comments
 (0)