@@ -12,42 +12,51 @@ jobs:
12
12
beta,
13
13
# 1.41.1 is MSRV for Rust-Lightning, lightning-invoice, and lightning-persister
14
14
1.41.1,
15
- # 1.45.2 is MSRV for lightning-net-tokio, lightning-block-sync, and coverage generation
15
+ # 1.45.2 is MSRV for lightning-net-tokio, lightning-block-sync, lightning-background-processor, and coverage generation
16
16
1.45.2,
17
17
# 1.47.0 will be the MSRV for no-std builds using hashbrown once core2 is updated
18
18
1.47.0]
19
19
include :
20
20
- toolchain : stable
21
21
build-net-tokio : true
22
22
build-no-std : true
23
+ build-futures : true
23
24
- toolchain : stable
24
25
platform : macos-latest
25
26
build-net-tokio : true
26
27
build-no-std : true
28
+ build-futures : true
27
29
- toolchain : beta
28
30
platform : macos-latest
29
31
build-net-tokio : true
30
32
build-no-std : true
33
+ build-futures : true
31
34
- toolchain : stable
32
35
platform : windows-latest
33
36
build-net-tokio : true
34
37
build-no-std : true
38
+ build-futures : true
35
39
- toolchain : beta
36
40
platform : windows-latest
37
41
build-net-tokio : true
38
42
build-no-std : true
43
+ build-futures : true
39
44
- toolchain : beta
40
45
build-net-tokio : true
41
46
build-no-std : true
47
+ build-futures : true
42
48
- toolchain : 1.41.1
43
49
build-no-std : false
44
50
test-log-variants : true
51
+ build-futures : false
45
52
- toolchain : 1.45.2
46
53
build-net-old-tokio : true
47
54
build-net-tokio : true
48
55
build-no-std : false
56
+ build-futures : true
49
57
coverage : true
50
58
- toolchain : 1.47.0
59
+ build-futures : true
51
60
build-no-std : true
52
61
runs-on : ${{ matrix.platform }}
53
62
steps :
@@ -109,23 +118,26 @@ jobs:
109
118
- name : Test on Rust ${{ matrix.toolchain }} with net-tokio and full code-linking for coverage generation
110
119
if : matrix.coverage
111
120
run : RUSTFLAGS="-C link-dead-code" cargo test --verbose --color always
112
- - name : Test on no-std bullds Rust ${{ matrix.toolchain }}
121
+ - name : Test no-std builds on Rust ${{ matrix.toolchain }}
113
122
if : " matrix.build-no-std && !matrix.coverage"
114
123
shell : bash # Default on Winblows is powershell
115
124
run : |
116
- for DIR in lightning lightning-invoice lightning-rapid-gossip-sync; do
117
- cd $DIR
118
- cargo test --verbose --color always --no-default-features --features no-std
119
- # check if there is a conflict between no-std and the default std feature
120
- cargo test --verbose --color always --features no-std
121
- # check that things still pass without grind_signatures
122
- # note that outbound_commitment_test only runs in this mode, because of hardcoded signature values
123
- cargo test --verbose --color always --no-default-features --features std
124
- # check if there is a conflict between no-std and the c_bindings cfg
125
- RUSTFLAGS="--cfg=c_bindings" cargo test --verbose --color always --no-default-features --features=no-std
126
- cd ..
127
- done
125
+ cd lightning
126
+ cargo test --verbose --color always --no-default-features --features no-std
127
+ # check if there is a conflict between no-std and the default std feature
128
+ cargo test --verbose --color always --features no-std
129
+ # check that things still pass without grind_signatures
130
+ # note that outbound_commitment_test only runs in this mode, because of hardcoded signature values
131
+ cargo test --verbose --color always --no-default-features --features std
132
+ # check if there is a conflict between no-std and the c_bindings cfg
133
+ RUSTFLAGS="--cfg=c_bindings" cargo test --verbose --color always --no-default-features --features=no-std
134
+ cd ..
135
+ cd lightning-invoice
136
+ cargo test --verbose --color always --no-default-features --features no-std
137
+ # check if there is a conflict between no-std and the default std feature
138
+ cargo test --verbose --color always --features no-std
128
139
# check no-std compatibility across dependencies
140
+ cd ..
129
141
cd no-std-check
130
142
cargo check --verbose --color always
131
143
- name : Build no-std-check on Rust ${{ matrix.toolchain }} for ARM Embedded
@@ -140,15 +152,26 @@ jobs:
140
152
run : |
141
153
cd lightning
142
154
RUSTFLAGS="-C link-dead-code" cargo test --verbose --color always --no-default-features --features no-std
143
- cd ..
155
+ - name : Test futures builds on Rust ${{ matrix.toolchain }}
156
+ if : " matrix.build-futures && !matrix.coverage"
157
+ shell : bash # Default on Winblows is powershell
158
+ run : |
159
+ cd lightning-background-processor
160
+ cargo test --verbose --color always --no-default-features --features futures
161
+ - name : Test futures builds on Rust ${{ matrix.toolchain }} and full code-linking for coverage generation
162
+ if : " matrix.build-futures && matrix.coverage"
163
+ shell : bash # Default on Winblows is powershell
164
+ run : |
165
+ cd lightning-background-processor
166
+ RUSTFLAGS="-C link-dead-code" cargo test --verbose --color always --no-default-features --features futures
144
167
- name : Test on Rust ${{ matrix.toolchain }}
145
168
if : " ! matrix.build-net-tokio"
146
169
run : |
147
- cargo test --verbose --color always -p lightning
148
- cargo test --verbose --color always -p lightning-invoice
149
- cargo test --verbose --color always -p lightning-rapid-gossip-sync
150
- cargo build --verbose --color always -p lightning-persister
151
- cargo build --verbose --color always -p lightning-background-processor
170
+ cargo test --verbose --color always -p lightning
171
+ cargo test --verbose --color always -p lightning-invoice
172
+ cargo test --verbose --color always -p lightning-rapid-gossip-sync
173
+ cargo test --verbose --color always -p lightning-persister
174
+ cargo test --verbose --color always -p lightning-background-processor
152
175
- name : Test C Bindings Modifications on Rust ${{ matrix.toolchain }}
153
176
if : " ! matrix.build-net-tokio"
154
177
run : |
@@ -299,6 +322,7 @@ jobs:
299
322
run : |
300
323
cargo check --release
301
324
cargo check --no-default-features --features=no-std --release
325
+ cargo check --no-default-features --features=futures --release
302
326
cargo doc --release
303
327
304
328
fuzz :
0 commit comments