make every version imply the one before it#117
Conversation
|
I'm confused by these errors -- it seems that I've broken the version detection somehow, but I don't understand how. |
|
After staring at versions the last 10 minutes I think I get it, I think the logic in versions.rs should be |
a5e6533 to
925d276
Compare
|
Ah! Yep, good catch! Also I made some typos in versions.rs. |
71e8bb8 to
c0050e0
Compare
src/versions.rs
Outdated
| pub const VERSION: &str = "0.21.0"; | ||
|
|
||
| #[cfg(feature = "0_20_1")] | ||
| #[cfg(all(feature = "0_20_1", not(feature = "0_20_1")))] |
There was a problem hiding this comment.
| #[cfg(all(feature = "0_20_1", not(feature = "0_20_1")))] | |
| #[cfg(all(feature = "0_20_1", not(feature = "0_21_0")))] |
src/versions.rs
Outdated
|
|
||
| #[cfg(not(feature = "0_17_1"))] | ||
| pub const VERSION: &str = "N/A"; | ||
|
|
There was a problem hiding this comment.
cargo fmt doesn't like this empty line and it's enforced in ci
c0050e0 to
5eeb733
Compare
|
could you please squash this last fix for mac 66a5d09 |
This allows the library to be compiled with any combination of versions of Bitcoin Core -- it will just use the highest one. This won't guarantee compatibility because Bitcoin Core sometimes makes backward-compatibility breaking changes ... but it is much better than the current situation where if you specify multiple feature flags, the library won't compile at all.
5eeb733 to
c06ee2f
Compare
|
Done. Thank you!! Sorry for so many iterations. |
|
ACK c06ee2f Thank you for this great idea to make features non-exclusive! Going to release soon |
|
Hooray! Thanks for accepting. Once we release I'll go try to update elementsd to use this new release, and a similar idea (which is actually what I'm trying to do here :P) |
This allows the library to be compiled with any combination of versions of Bitcoin Core -- it will just use the highest one.
This won't guarantee compatibility because Bitcoin Core sometimes makes backward-compatibility breaking changes ... but it is much better than the current situation where if you specify multiple feature flags, the library won't compile at all.