-
Notifications
You must be signed in to change notification settings - Fork 92
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
no-std support broken in 0.5.0 #71
Comments
Same issue here. Here's what
|
bump |
Doing some investigation because I would like to move this forward as well. I believe the issue came from the changes in #41 which make use of allocation ( Would like to know what everyone else thinks. At first glance, it does not seem possible to feature-gate behind Related: #46 |
#75 should resolve this issue, which is in |
I am experiencing this issue in 0.6.0 with:
std duplicate method exceptions are thrown noting:
|
@samkirton that's strange...I just tried again with |
The only other dependencies I have are:
where rand is turned on only for the signing feature |
@samkirton I still can't reproduce your exact error message above, but I can reproduce a similar one when I use |
Signing requires hmac, which requires std, so rand is only ever used for std builds. I will try and disable default features on rand though just incase |
Oh right, sorry. |
@trevor-crypto I just tried to upgrade to 0.6.0 from 0.3.5 and getting std dependencies again. I guess it's expected based on your note above:
Does this mean that this crate no longer support signing with no_std? There must be a no_std version of hmac because 0.3.5 is depending on one. |
I tried using the This dependency alone pulls in the std:
It would be great (or rather necessary) to have no_std signing feature like in earlier versions. My only known option is to downgrade to 0.3.5 which I'll have to patch because some of its dependencies are no longer on crates_io. |
- Turn off default features for core in gen and genmult - Use serde-json-core (no_std support) in dev-dependencies Relates to paritytech#71
@fredfortier I submitted a PR. If you'd like you can test it out on my branch or wait for it to come into |
I'm confused about this issue as well because |
You did it @trevor-crypto . Your branch referenced above is now working for me when compiling to my no_std target. |
* Fix no_std builds attempt 2 - Turn off default features for core in gen and genmult - Use serde-json-core (no_std support) in dev-dependencies Relates to #71 * Use resolver="2" Allows us to use serde_json in dev-dependencies and compile for no_std: https://blog.rust-lang.org/2021/03/25/Rust-1.51.0.html#cargos-new-feature-resolver * revert unnecessary changes
This should be fixed now. Let me know if the error still exists. |
* Fix no_std builds attempt 2 - Turn off default features for core in gen and genmult - Use serde-json-core (no_std support) in dev-dependencies Relates to paritytech#71 * Use resolver="2" Allows us to use serde_json in dev-dependencies and compile for no_std: https://blog.rust-lang.org/2021/03/25/Rust-1.51.0.html#cargos-new-feature-resolver * revert unnecessary changes
This issue has the same title as #68, but the problem isn't the same.
As of version 0.5.0/core-0.2.0, recently published on crates.io, compiling with
default-feature = false
leads to compilation errors in the core:To reproduce, just add
libsecp256k1 = { version = "0.5.0", default-features = false }
as a dependency to a project.The text was updated successfully, but these errors were encountered: