Skip to content
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

Make the library compile for #![no_std] #133

Closed
tomaka opened this issue Feb 9, 2023 · 4 comments · Fixed by #1281
Closed

Make the library compile for #![no_std] #133

tomaka opened this issue Feb 9, 2023 · 4 comments · Fixed by #1281

Comments

@tomaka
Copy link
Contributor

tomaka commented Feb 9, 2023

paritytech/smoldot#106

@tomaka tomaka added the blocked Progress on this issue requires something beyond our control label Feb 10, 2023
@tomaka
Copy link
Contributor Author

tomaka commented Mar 29, 2023

It should be possible to replace snow with the crates of https://github.com/RustCrypto
See also https://noiseprotocol.org/noise.html and https://noiseexplorer.com/patterns/XX/

@tomaka tomaka removed the blocked Progress on this issue requires something beyond our control label Mar 30, 2023
@tomaka tomaka changed the title Make the library compile for nostd Make the library compile for #![no_std] Apr 17, 2023
@tomaka
Copy link
Contributor Author

tomaka commented Jul 8, 2023

After #870, I think the only blockers remaining are the crates that are marked with TODOs in the Cargo.toml, namely ruzstd (which is waiting for rust-lang/rust#103765), the futures-* crates (the big select! macro unfortunately requires std for a reason I can't recall), and event-listener.

@tomaka
Copy link
Contributor Author

tomaka commented Oct 28, 2023

The last blocker seems to be that f64::powf isn't available in no_std contexts.
It should be possible to bypass the issue, but given that the calculation is copy-pasted from Substrate this seems a bit risky.

@tomaka
Copy link
Contributor Author

tomaka commented Oct 28, 2023

smoldot (the library) will be no-std-friendly after ruzstd publishes a version (see #431)
As for smoldot-light, I believe that it just needs the removal of features of futures-util.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant