@@ -8,39 +8,20 @@ HOST_PLATFORM="$(rustc --version --verbose | grep "host:" | awk '{ print $2 }')"
88#  which we do here.
99#  Further crates which appear only as dev-dependencies are pinned further down.
1010function  PIN_RELEASE_DEPS  {
11- 	#  Tokio MSRV on versions 1.17 through 1.26 is rustc 1.49. Above 1.26 MSRV is 1.56.
12- 	[ " $RUSTC_MINOR_VERSION " -lt  49 ] &&  cargo update -p tokio --precise " 1.14.1" 
13- 	[[ " $RUSTC_MINOR_VERSION " -gt  48  &&   " $RUSTC_MINOR_VERSION " -lt  56 ]] &&  cargo update -p tokio --precise " 1.25.1" 
11+ 	#  Starting with version 1.10.0, the `regex` crate has an MSRV of rustc 1.65.0.
12+ 	[ " $RUSTC_MINOR_VERSION " -lt  65 ] &&  cargo update -p regex --precise " 1.9.6" 
1413
15- 	#  Sadly the log  crate is always  a dependency of tokio until 1.20, and has no reasonable MSRV guarantees 
16- 	[ " $RUSTC_MINOR_VERSION " -lt  49  ] &&  cargo update -p log  --precise " 0.4.18 " 
14+ 	#  The addr2line v0.21  crate ( a dependency of `backtrace` starting with 0.3.69) relies on rustc 1.65 
15+ 	[ " $RUSTC_MINOR_VERSION " -lt  65  ] &&  cargo update -p backtrace  --precise " 0.3.68 " 
1716
18- 	#  The serde_json crate switched to Rust edition 2021 starting with v1.0.101, i.e., has MSRV of 1.56 
19- 	[ " $RUSTC_MINOR_VERSION " -lt  56  ] &&  cargo update -p serde_json  --precise " 1.0.100 " 
17+ 	#  jobserver 0.1.27 requires rustc 1.66.0 
18+ 	[ " $RUSTC_MINOR_VERSION " -lt  66  ] &&  cargo update -p jobserver  --precise " 0.1.26 " 
2019
2120	return  0 #  Don't fail the script if our rustc is higher than the last check
2221}
2322
2423PIN_RELEASE_DEPS #  pin the release dependencies in our main workspace
2524
26- #  The addr2line v0.20 crate (a dependency of `backtrace` starting with 0.3.68) relies on 1.55+
27- [ " $RUSTC_MINOR_VERSION " -lt  55 ] &&  cargo update -p backtrace --precise " 0.3.67" 
28- 
29- #  The quote crate switched to Rust edition 2021 starting with v1.0.31, i.e., has MSRV of 1.56
30- [ " $RUSTC_MINOR_VERSION " -lt  56 ] &&  cargo update -p quote --precise " 1.0.30" 
31- 
32- #  The syn crate depends on too-new proc-macro2 starting with v2.0.33, i.e., has MSRV of 1.56
33- if  [ " $RUSTC_MINOR_VERSION " -lt  56 ];  then 
34- 	SYN_2_DEP=$( grep -o ' "syn 2.*' |  tr -d ' ",' |  tr '  ' ' :' ) 
35- 	cargo update -p " $SYN_2_DEP " " 2.0.32" 
36- fi 
37- 
38- #  The proc-macro2 crate switched to Rust edition 2021 starting with v1.0.66, i.e., has MSRV of 1.56
39- [ " $RUSTC_MINOR_VERSION " -lt  56 ] &&  cargo update -p proc-macro2 --precise " 1.0.65" 
40- 
41- #  The memchr crate switched to an MSRV of 1.60 starting with v2.6.0
42- [ " $RUSTC_MINOR_VERSION " -lt  60 ] &&  cargo update -p memchr --precise " 2.5.0" 
43- 
4425export  RUST_BACKTRACE=1
4526
4627echo  -e " \n\nBuilding and testing all workspace crates..." 
@@ -59,7 +40,7 @@ cargo test --verbose --color always --features rpc-client,rest-client,tokio
5940cargo check --verbose --color always --features rpc-client,rest-client,tokio
6041popd 
6142
62- if  [[ $RUSTC_MINOR_VERSION   -gt  67  &&   " $HOST_PLATFORM " !=  * windows*  ]];  then 
43+ if  [[ " $HOST_PLATFORM " !=  * windows*  ]];  then 
6344	echo  -e " \n\nBuilding and testing Transaction Sync Clients with features" 
6445	pushd  lightning-transaction-sync
6546	cargo test  --verbose --color always --features esplora-blocking
@@ -76,20 +57,16 @@ pushd lightning-background-processor
7657cargo test  --verbose --color always --features futures
7758popd 
7859
79- if  [ " $RUSTC_MINOR_VERSION " -gt  55 ];  then 
80- 	echo  -e " \n\nTest Custom Message Macros" 
81- 	pushd  lightning-custom-message
82- 	cargo test  --verbose --color always
83- 	[ " $CI_MINIMIZE_DISK_USAGE " !=  " " &&  cargo clean
84- 	popd 
85- fi 
60+ echo  -e " \n\nTest Custom Message Macros" 
61+ pushd  lightning-custom-message
62+ cargo test  --verbose --color always
63+ [ " $CI_MINIMIZE_DISK_USAGE " !=  " " &&  cargo clean
64+ popd 
8665
87- if  [ " $RUSTC_MINOR_VERSION " -gt  51 ];  then  #  Current `object` MSRV, subject to change
88- 	echo  -e " \n\nTest backtrace-debug builds" 
89- 	pushd  lightning
90- 	cargo test  --verbose --color always --features backtrace
91- 	popd 
92- fi 
66+ echo  -e " \n\nTest backtrace-debug builds" 
67+ pushd  lightning
68+ cargo test  --verbose --color always --features backtrace
69+ popd 
9370
9471echo  -e " \n\nBuilding with all Log-Limiting features" 
9572pushd  lightning
@@ -100,13 +77,14 @@ popd
10077
10178echo  -e " \n\nTesting no-std flags in various combinations" 
10279for  DIR  in  lightning lightning-invoice lightning-rapid-gossip-sync;  do 
103- 	[  " $RUSTC_MINOR_VERSION "   -gt  50 ]  &&   cargo test  -p $DIR  --verbose --color always --no-default-features --features no-std
80+ 	cargo test  -p $DIR  --verbose --color always --no-default-features --features no-std
10481	#  check if there is a conflict between no-std and the default std feature
105- 	[  " $RUSTC_MINOR_VERSION "   -gt  50 ]  &&   cargo test  -p $DIR  --verbose --color always --features no-std
82+ 	cargo test  -p $DIR  --verbose --color always --features no-std
10683done 
84+ 
10785for  DIR  in  lightning lightning-invoice lightning-rapid-gossip-sync;  do 
10886	#  check if there is a conflict between no-std and the c_bindings cfg
109- 	[  " $RUSTC_MINOR_VERSION "   -gt  50 ]  &&   RUSTFLAGS=" --cfg=c_bindings" test  -p $DIR  --verbose --color always --no-default-features --features=no-std
87+ 	RUSTFLAGS=" --cfg=c_bindings" test  -p $DIR  --verbose --color always --no-default-features --features=no-std
11088done 
11189RUSTFLAGS=" --cfg=c_bindings" test  --verbose --color always
11290
@@ -123,16 +101,7 @@ popd
123101echo  -e " \n\nTesting no-std build on a downstream no-std crate" 
124102#  check no-std compatibility across dependencies
125103pushd  no-std-check
126- if  [[ $RUSTC_MINOR_VERSION  -gt  67 ]];  then 
127- 	#  lightning-transaction-sync's MSRV is 1.67
128- 	cargo check --verbose --color always --features lightning-transaction-sync
129- else 
130- 	#  The memchr crate switched to an MSRV of 1.60 starting with v2.6.0
131- 	#  This is currently only a release dependency via core2, which we intend to work with
132- 	#  rust-bitcoin to remove soon.
133- 	[ " $RUSTC_MINOR_VERSION " -lt  60 ] &&  cargo update -p memchr --precise " 2.5.0" 
134- 	cargo check --verbose --color always
135- fi 
104+ cargo check --verbose --color always
136105[ " $CI_MINIMIZE_DISK_USAGE " !=  " " &&  cargo clean
137106popd 
138107
0 commit comments