Remove rand feature; bump elliptic-curve and ecdsa#162
Conversation
Codecov Report
@@ Coverage Diff @@
## master #162 +/- ##
=======================================
Coverage 60.25% 60.25%
=======================================
Files 25 25
Lines 3555 3555
=======================================
Hits 2142 2142
Misses 1413 1413
Continue to review full report at Codecov.
|
40237ae to
9f4fdcc
Compare
Updates to use the `group` crate. See: RustCrypto/traits#287. This crate has a hard `rand_core` dependency so this commit gets rid of the `rand` features across the board and makes them mandatory. (Even if we don't end up shipping the `group` crate this release, that's probably for the best to keep the number of features down) This commit additionally splits out `no_std` build testing into `tests/*_no_std` Cargo projects. This is a workaround until the Cargo resolver is fixed upstream: rust-lang/cargo#7915 rust-lang/cargo#7916
9f4fdcc to
213e9b8
Compare
| # no_std tests | ||
|
|
||
| This directory and associated CI configs in `.github` is a workaround for | ||
| issues with the `cargo` resolver activating features from dev-dependencies | ||
| which cause `std` to get linked in a release target. | ||
|
|
||
| It contains small test crates in their own isolated workspace which ensure that | ||
| these features are not activated when linking and therefore that the crates | ||
| will link in `no_std` environments when consumed as a dependency of another | ||
| `no_std`-compatible crate. | ||
|
|
||
| Here are upstream issues tracking the problem: | ||
|
|
||
| - [#7914: Tracking issue for `-Z features=itarget`](https://github.com/rust-lang/cargo/issues/7914) | ||
| - [#7915: Tracking issue for `-Z features=host_dep`](https://github.com/rust-lang/cargo/issues/7915) | ||
| - [#7916: Tracking issue for `-Z features=dev_dep`](https://github.com/rust-lang/cargo/issues/7916]) |
There was a problem hiding this comment.
A different solution it's probably worth exploring here is moving proptests and criterion benchmarks into their own crates so the [dev-dependencies] of the root workspace remain clean and aren't polluted by spurious feature activations.
cc @newpavlov
There was a problem hiding this comment.
I am not sure about the proptest, but I think that the criterion benchmarks should definitely be moved into a separate crate with its own workspace as was done in other repositories.
Updates to use the
groupcrate. See: RustCrypto/traits#287.This crate has a hard
rand_coredependency so this commit gets rid of therandfeatures across the board and makes them mandatory.(Even if we don't end up shipping the
groupcrate this release, that's probably for the best to keep the number of features down)