@@ -14,21 +14,34 @@ jobs:
1414 # 1.41.0 is Debian stable
1515 1.41.0,
1616 # 1.45.2 is MSRV for lightning-net-tokio, lightning-block-sync, and coverage generation
17- 1.45.2]
17+ 1.45.2,
18+ # 1.49.0 is MSRV for no_std builds using hashbrown
19+ 1.49.0]
1820 include :
1921 - toolchain : stable
2022 build-net-tokio : true
23+ build-no-std : true
2124 - toolchain : stable
2225 platform : macos-latest
2326 build-net-tokio : true
27+ build-no-std : true
2428 - toolchain : stable
2529 platform : windows-latest
2630 build-net-tokio : true
31+ build-no-std : true
2732 - toolchain : beta
2833 build-net-tokio : true
34+ build-no-std : true
35+ - toolchain : 1.36.0
36+ build-no-std : false
37+ - toolchain : 1.41.0
38+ build-no-std : false
2939 - toolchain : 1.45.2
3040 build-net-tokio : true
41+ build-no-std : false
3142 coverage : true
43+ - toolchain : 1.49.0
44+ build-no-std : true
3245 runs-on : ${{ matrix.platform }}
3346 steps :
3447 - name : Checkout source code
4760 run : RUSTFLAGS="-C link-dead-code" cargo build --verbose --color always
4861 - name : Build on Rust ${{ matrix.toolchain }}
4962 if : " ! matrix.build-net-tokio"
50- run : cargo build --verbose --color always -p lightning && cargo build --verbose --color always -p lightning-invoice && cargo build --verbose --color always -p lightning-persister
63+ run : |
64+ cargo build --verbose --color always -p lightning
65+ cargo build --verbose --color always -p lightning-invoice
66+ cargo build --verbose --color always -p lightning-persister
5167 - name : Build Block Sync Clients on Rust ${{ matrix.toolchain }} with features
5268 if : " matrix.build-net-tokio && !matrix.coverage"
5369 run : |
5672 cargo build --verbose --color always --features rpc-client
5773 cargo build --verbose --color always --features rpc-client,rest-client
5874 cargo build --verbose --color always --features rpc-client,rest-client,tokio
59- cd ..
6075 - name : Build Block Sync Clients on Rust ${{ matrix.toolchain }} with features and full code-linking for coverage generation
6176 if : matrix.coverage
6277 run : |
@@ -65,16 +80,30 @@ jobs:
6580 RUSTFLAGS="-C link-dead-code" cargo build --verbose --color always --features rpc-client
6681 RUSTFLAGS="-C link-dead-code" cargo build --verbose --color always --features rpc-client,rest-client
6782 RUSTFLAGS="-C link-dead-code" cargo build --verbose --color always --features rpc-client,rest-client,tokio
68- cd ..
6983 - name : Test on Rust ${{ matrix.toolchain }} with net-tokio
7084 if : " matrix.build-net-tokio && !matrix.coverage"
7185 run : cargo test --verbose --color always
7286 - name : Test on Rust ${{ matrix.toolchain }} with net-tokio and full code-linking for coverage generation
7387 if : matrix.coverage
7488 run : RUSTFLAGS="-C link-dead-code" cargo test --verbose --color always
89+ - name : Test on no_std bullds Rust ${{ matrix.toolchain }}
90+ if : " matrix.build-no-std && !matrix.coverage"
91+ run : |
92+ cd lightning
93+ cargo test --verbose --color always --features hashbrown
94+ cd ..
95+ - name : Test on no_std bullds Rust ${{ matrix.toolchain }} and full code-linking for coverage generation
96+ if : " matrix.build-no-std && matrix.coverage"
97+ run : |
98+ cd lightning
99+ RUSTFLAGS="-C link-dead-code" cargo test --verbose --color always --features hashbrown
100+ cd ..
75101 - name : Test on Rust ${{ matrix.toolchain }}
76102 if : " ! matrix.build-net-tokio"
77- run : cargo test --verbose --color always -p lightning && cargo test --verbose --color always -p lightning-invoice && cargo build --verbose --color always -p lightning-persister
103+ run : |
104+ cargo test --verbose --color always -p lightning
105+ cargo test --verbose --color always -p lightning-invoice
106+ cargo build --verbose --color always -p lightning-persister
78107 - name : Test Block Sync Clients on Rust ${{ matrix.toolchain }} with features
79108 if : " matrix.build-net-tokio && !matrix.coverage"
80109 run : |
83112 cargo test --verbose --color always --features rpc-client
84113 cargo test --verbose --color always --features rpc-client,rest-client
85114 cargo test --verbose --color always --features rpc-client,rest-client,tokio
86- cd ..
87115 - name : Test Block Sync Clients on Rust ${{ matrix.toolchain }} with features and full code-linking for coverage generation
88116 if : matrix.coverage
89117 run : |
92120 RUSTFLAGS="-C link-dead-code" cargo test --verbose --color always --features rpc-client
93121 RUSTFLAGS="-C link-dead-code" cargo test --verbose --color always --features rpc-client,rest-client
94122 RUSTFLAGS="-C link-dead-code" cargo test --verbose --color always --features rpc-client,rest-client,tokio
95- cd ..
96123 - name : Install deps for kcov
97124 if : matrix.coverage
98125 run : |
@@ -157,6 +184,7 @@ jobs:
157184 run : |
158185 cd lightning
159186 RUSTFLAGS="--cfg=require_route_graph_test" cargo test
187+ RUSTFLAGS="--cfg=require_route_graph_test" cargo test --features hashbrown
160188 cd ..
161189 - name : Run benchmarks on Rust ${{ matrix.toolchain }}
162190 run : |
0 commit comments