substrate icon indicating copy to clipboard operation
substrate copied to clipboard

`full_crypto` feature breaks `no_std` build

Open clangenb opened this issue 3 years ago • 8 comments

Is there an existing issue?

  • [X] I have searched the existing issues

Experiencing problems? Have you tried our Stack Exchange first?

  • [X] This is not a support question.

Description of bug

The reason is that the ed25519-zebra version on crates.io is not yet no_std compatible. The master branch in that repository is however: https://github.com/ZcashFoundation/ed25519-zebra. substrate doesn't detect this because the full_crypto feature is not used in no_std in its codebase.

  • Issue opened there: https://github.com/ZcashFoundation/ed25519-zebra/issues/60

Steps to reproduce

No response

clangenb avatar Sep 09 '22 06:09 clangenb

We should send them a PR for no_std of course. If they're reluctant to merge it then please send a no_std PR to https://github.com/penumbra-zone/ed25519-consensus too.

burdges avatar Sep 09 '22 09:09 burdges

The thing is, they have already implemented no_std compatibility on their master branch since last may. They only need to publish a release on crates.io, which I have requested now.

I kind of assumed that you do not want to add arbitrary git repositories as third-party dependencies without referencing a specific tag, as downstream implementors get simply the newest commit on master branch, which might include breaking changes. But in theory this could be fixed now, by changing the ed25519-zebras source.

clangenb avatar Sep 09 '22 09:09 clangenb

cool, yeah they can simply do a release I'd think. I can ask someone personally if nothing happened by next week.

burdges avatar Sep 09 '22 12:09 burdges

@burdges I have not heard anything from them. Do you mind talking to them?

clangenb avatar Sep 14 '22 10:09 clangenb

@burdges This is now in the polkadot-v0.9.29, and now we need to patch this on our end. May I ask you again to talk to them directly to publish a release? Thank you very much!

clangenb avatar Sep 27 '22 09:09 clangenb

We need this fast then? We'll likely need to republish their crate ourselves, but I'll ask again right quick..

burdges avatar Sep 27 '22 19:09 burdges

Well, it seems we are the only people using this feature combination so far, and patching it with the git repository works, fortunately. But the sooner, the better!

Thank you very much!

clangenb avatar Sep 28 '22 07:09 clangenb

Did we ever try https://github.com/penumbra-zone/ed25519-consensus ?

I voted zebra way back because zcash foundation maintains it but.. at least penumbra is not just one person now.

burdges avatar Oct 15 '22 13:10 burdges