dalek-cryptography / bulletproofs

A pure-Rust implementation of Bulletproofs using Ristretto.
MIT License
1.04k stars 217 forks source link

Update rand_core, curve25519-dalek, merlin versions. #303

Closed hdevalence closed 4 years ago

hdevalence commented 4 years ago

This is a breaking API change that will require a 2.0.0 version, but it keeps the crate up-to-date with the rand ecosystem. A possible further simplification of the dep tree would be to replace clear_on_drop by zeroize, but this could be done at any later point because clear_on_drop is an implementation detail.

oleganza commented 4 years ago

I've also bumped criterion dependency to 0.3 - seems like it's compatible with our benchmarks. So it uses the same rand as the rest of the code. Otherwise we'd have 3 different versions of rand in benchmark builds.

hdevalence commented 4 years ago

Yay!

hdevalence commented 4 years ago

I guess the only thing to remember is that when we do a 2.0 release we should be sure to disable the yoloproofs feature again in the published crate.

oleganza commented 4 years ago

I guess the only thing to remember is that when we do a 2.0 release we should be sure to disable the yoloproofs feature again in the published crate.

is it done manually somehow?

hdevalence commented 4 years ago

Yeah, last time the workflow was (assuming main, develop are in sync with the repo):

  1. Branch develop to release/X.Y.Z
  2. In the release branch, comment out yoloproofs in the Cargo.toml in a single atomic commit
  3. Add other commits updating the changelog, version number, etc.
  4. Tag the release as X.Y.Z, checkout the tag, cargo publish
  5. Merge release/X.Y.Z into main
  6. Merge main into develop
  7. On develop, do a revert of the atomic commit from (2).
  8. Push main, develop, and the X.Y.Z tag to the repo.
oleganza commented 4 years ago

if CI is so damn clever to check rustfmt, can't just do it all by itself, check that tests work and offer you a one-click green-checkmark commit button without waiting for the tests to run all over again

oleganza commented 4 years ago

maybe in a couple of months we'll be able to get CI finish in green

hdevalence commented 4 years ago

I tried manually restarting the build.

hdevalence commented 4 years ago

The build timed out again, but running the command locally passes. My preference would be to merge this and try to fix the CI later, does that sound good?

oleganza commented 4 years ago

Yup!

hdevalence commented 4 years ago

Done!