Skip to content

Commit b43c8b0

Browse files
committed
Document and enforce MSRV in CI
1 parent 8ba7e72 commit b43c8b0

File tree

2 files changed

+17
-1
lines changed

2 files changed

+17
-1
lines changed

.github/workflows/build.yml

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,17 @@ jobs:
66
build:
77
strategy:
88
matrix:
9-
toolchain: [ stable, beta ]
9+
toolchain: [
10+
stable,
11+
beta,
12+
1.60.0, # Our MSRV
13+
]
1014
include:
1115
- toolchain: stable
1216
check-fmt: true
17+
build-uniffi: true
18+
- toolchain: 1.60.0
19+
msrv: true
1320
runs-on: ubuntu-latest
1421
steps:
1522
- name: Checkout source code
@@ -20,9 +27,13 @@ jobs:
2027
toolchain: ${{ matrix.toolchain }}
2128
override: true
2229
profile: minimal
30+
- name: Pin packages to allow for MSRV
31+
if: matrix.msrv
32+
run: cargo update -p hashlink --precise "0.8.1" --verbose # hashlink 0.8.2 requires hashbrown 0.13, requiring 1.61.0
2333
- name: Build on Rust ${{ matrix.toolchain }}
2434
run: cargo build --verbose --color always
2535
- name: Build with UniFFI support on Rust ${{ matrix.toolchain }}
36+
if: matrix.build-uniffi
2637
run: cargo build --features uniffi --verbose --color always
2738
- name: Build documentation on Rust ${{ matrix.toolchain }}
2839
run: |
@@ -31,10 +42,12 @@ jobs:
3142
- name: Check release build on Rust ${{ matrix.toolchain }}
3243
run: cargo check --release --verbose --color always
3344
- name: Check release build with UniFFI support on Rust ${{ matrix.toolchain }}
45+
if: matrix.build-uniffi
3446
run: cargo check --release --features uniffi --verbose --color always
3547
- name: Test on Rust ${{ matrix.toolchain }}
3648
run: cargo test
3749
- name: Test with UniFFI support on Rust ${{ matrix.toolchain }}
50+
if: matrix.build-uniffi
3851
run: cargo test --features uniffi
3952
- name: Check formatting on Rust ${{ matrix.toolchain }}
4053
if: matrix.check-fmt

README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,9 @@ LDK Node currently comes with a decidedly opinionated set of design choices:
5959
## Language Support
6060
LDK Node itself is written in [Rust][rust] and may therefore be natively added as a library dependency to any `std` Rust program. However, beyond its Rust API it also offers language bindings for [Swift][swift], [Kotlin][kotlin], and [Python][python] based on the [UniFFI](https://github.com/mozilla/uniffi-rs/). Moreover, [Flutter bindings][flutter_bindings] are also available.
6161

62+
## MSRV
63+
The Minimum Supported Rust Version (MSRV) is currently 1.60.0.
64+
6265
[api_docs]: https://docs.rs/ldk-node/*/ldk_node/
6366
[api_docs_node]: https://docs.rs/ldk-node/*/ldk_node/struct.Node.html
6467
[api_docs_builder]: https://docs.rs/ldk-node/*/ldk_node/struct.Builder.html

0 commit comments

Comments
 (0)