-
Notifications
You must be signed in to change notification settings - Fork 412
Fix rapid-gossip-sync
no-std
and properly test no-std in CI
#1756
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix rapid-gossip-sync
no-std
and properly test no-std in CI
#1756
Conversation
Codecov ReportBase: 90.73% // Head: 90.71% // Decreases project coverage by
Additional details and impacted files@@ Coverage Diff @@
## main #1756 +/- ##
==========================================
- Coverage 90.73% 90.71% -0.02%
==========================================
Files 87 87
Lines 46713 46713
Branches 46713 46713
==========================================
- Hits 42383 42374 -9
- Misses 4330 4339 +9
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. ☔ View full report at Codecov. |
While `rapid-gossip-sync` recently gained a `no-std` feature, it didn't actually work, as there were still dangling references to `std` and prelude assumptions. This makes `rapid-gossip-sync` build (and test) properly in `no-std`.
c7fbeae
to
a59fc4d
Compare
Given there is only one instance in our code of `AtomicU64` its simplest to just remove it rather than try to add some kind of wrapper.
a59fc4d
to
040a058
Compare
040a058
to
7143599
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Grrr. Excuse the oversight. Looks good mod the failing CI.
7143599
to
976e798
Compare
Rust is incredibly forgiving in attempts to access `std`, making it rather difficult to test `no-std` properly. In practice, the only decent way to do so is to actually build for a platform that does not have `std`, which we do here by building the `no-std-check` crate for `arm-thumbv7m-none-eabi`.
976e798
to
ada0df2
Compare
While
rapid-gossip-sync
recently gained ano-std
feature, itdidn't actually work, as there were still dangling references to
std
and prelude assumptions. This makesrapid-gossip-sync
build (and test) properly in
no-std
.Ultimately, Rust is incredibly forgiving in attempts to access
std
, making itrather difficult to test
no-std
properly. In practice, the onlydecent way to do so is to actually build for a platform that does
not have
std
, which we do here by building theno-std-check
crate for
arm-thumbv7m-none-eabi
.