GitHub Actions runners already have rustup with the stable toolchain
installed, apparently. actions-rs is going away and we don't want to
keep maintaining a fork with an unsupported upstream, so start the
process of dropping it.
Benchmarks require Rust 1.65 or later currently due to benchmark-only
dependencies.
Also, benchmarks add a lot of downloading/build time because they have
many more dependencies. So, skipping them in these jobs makes them
faster.
`dev_urandom_fallback` presently does nothing, so don't bother adding
it as a matrix dimension.
Because `dev_urandom_fallback` does nothing,
`--no-default-features --features=alloc` is effectively the same as the
default feature set, so don't add it as a matrix dimension.
`--all-features` is no longer appropriate after the ARM hardware feature
disabling features were added, so replace it with what we really want,
`--features=std,slow_tests`.
In the coverage section, `--features=alloc,dev_urandom_fallback,std` is
the same as `--features=std` since `alloc and `urandom_fallback` are
default features.
Move the Criterion.rs dependency out of *ring* into a new `ring-benches`
crate. This speeds up many build scenerios by eliminating a bunch of
dependencies from *ring*'s dependency tree for `cargo test`.
Frequently lately one coverage job has been failing per job. Instead of
re-running the whole matrix again, make it so we just need to run the
(usually) one job that failed.
These are duplicated by `coverage` (temporarily) and the `features` tests.
Do this to reduce the latency between submitting a PR and it passing CI.
Right now we have so many jobs with the huge matrix and CI takes too long.
The CI jobs for this target are failing with this error:
```
error: component 'rust-std' for target 'mipsel-unknown-linux-gnu' is
unavailable for download for channel 'nightly'
```
Remove the target while we investigate.
A recent change in the toolchain, possible cc-rs, caused the build to break since
we were running `cargo` two different ways with different environment variables.
"The Ubuntu 18.04 Actions runner image is being deprecated and will be
removed by 12/1/22" according to the GitHub Changelog blog.
Temporarily disable wasm32 tests using Firefox until the Ubuntu 22.04
runners are set up correctly.