Skip to content

Conversation

pull[bot]
Copy link

@pull pull bot commented Oct 3, 2019

See Commits and Changes for more details.


Created by pull[bot]

Can you help keep this open source service alive? 💖 Please sponsor : )

dependabot bot and others added 23 commits September 28, 2024 12:24
Notably this version drops the `crypto-common` dependency
Notably this version removes the `std` feature, a breaking change from
the previous `rc.0`
The `crypto` crate is linking old versions of the trait crates, and
that's causing collisions when building the workspace rustdoc:

    warning: output filename collision.
The lib target `aead` in package `aead v0.6.0-rc.0
(/Users/tony/src/RustCrypto/traits/aead)` has the same output filename
as the lib target `aead` in package `aead v0.5.2`.
Colliding filename is:
/Users/tony/src/RustCrypto/traits/target/doc/aead/index.html
    The targets should have unique names.
    This is a known bug where multiple crates with the same name use
    the same path; see <rust-lang/cargo#6313>.
    warning: output filename collision.
The lib target `cipher` in package `cipher v0.5.0-pre.7
(/Users/tony/src/RustCrypto/traits/cipher)` has the same output filename
as the lib target `cipher` in package `cipher v0.4.4`.
Colliding filename is:
/Users/tony/src/RustCrypto/traits/target/doc/cipher/index.html
    The targets should have unique names.
    This is a known bug where multiple crates with the same name use
    the same path; see <rust-lang/cargo#6313>.

This changes the CI config to exclude it from the rustdoc build for now,
since everything else is on a prerelease series.

We should probably bump `crypto` to link the latest prereleases soon,
but for now this gets CI green again.
As of #1660, the `crypto-common` crate stopped linking `std` entirely by
switching to `core::error::Error`.

That PR didn't remove the `std` feature however, which was retained to
transitively activate the `std` features of `getrandom` and `rand_core`
optioinally in the event their corresponding features are enabled.

This PR goes ahead and removes it entirely, which also unblocks being
able to remove the `std` feature from other crates like `aead`,
`cipher`, `digest`, and `universal-hash`.
Bumps [const-oid](https://github.com/RustCrypto/formats) from
0.10.0-rc.0 to 0.10.0-rc.1.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/RustCrypto/formats/commits">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=const-oid&package-manager=cargo&previous-version=0.10.0-rc.0&new-version=0.10.0-rc.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Since errors returned by `std::error::Error::source()` are commonly
printed separately, this avoids double-printing the source error
message.

Fixes #1685.
Switches from `std::error::Error` to `core::error::Error` which was
stabilized in Rust 1.81, which is already the `cipher` crate's current
MSRV.

Since this was the only usage of `std`, also removes the `std` feature.
Switches from `std::error::Error` to `core::error::Error` which was
stabilized in Rust 1.81, which is already the `aead` crate's current
MSRV.

Since this was the only usage of `std`, also removes the `std` feature.
- Pin to `ubuntu-24.04` until upgrade is complete at the end of October
- Re-unify security audit since workspace has been re-unified
- Use `rustsec/audit-check@v2` since `actions-rs` is unmaintained
Notably in the `crypto-common` and `elliptic-curve` crates which have
direct dependencies on `hybrid-array`.
This trait is now stable in `core`
Runs `cargo clippy --all-features --fix` using 1.83.0-beta.1
The OID identifies the particular elliptic curve the key is for.

Without it, OpenSSL can't parse these keys. See #1706.
tarcieri and others added 30 commits September 2, 2025 06:28
Removed in #1959 but there are definitely still quite a few usages and I
don't see ways to completely replace all of them with `KeyIvInit`
(though that seems ideal).

See RustCrypto/AEADs#710
Uses `hybrid-array` v0.4-compatible crate releases rather than sourcing
these crates from git:

- `block-buffer` v0.11.0-rc.5
- `block-padding` v0.4.0-rc.4
- `inout` v0.2.0-rc.6
Notably includes `hybrid-array` v0.4 support
Releases the following:
- `aead` v0.6.0-rc.2
- `cipher` v0.5.0-rc.1
- `digest` v0.11.0-rc.1
- `signature` v3.0.0-rc.3
- `universal-hash` v0.6.0-rc.2

A separate `elliptic-curve` release is forthcoming
Notably this includes `hybrid-array` v0.4 support
Adds a new API for constructing affine points from their coordinates,
serialized as bytes.

Companion PR: RustCrypto/elliptic-curves#1405

Resolves #1994
`heapless` v0.9 has MSRV 1.87 while we would like to keep MSRV 1.85 for
the initial aead v0.6.0 release. We plan to add support in v0.6.1
immediately after v0.6.0 release.
Previously it was `NonZero`.

This associated constant is for the curve's prime order subgroup, which
will always be odd.

There are many modular algorithms which require the modulus is odd, and
bounding the `ORDER` on `Odd` ensures those algorithms will be
compatible with the scalar field.

The `primefield` crate and the params we are computing for every field
of every curve are also `Odd` (i.e. the `modulus` of `MontyParams`).
Denotes the type reperents an integer value in range of the scalar
modulus.

Ideally we could get rid of this type if there were a suitable
replacement type somewhere else, e.g. RustCrypto/elliptic-curves#1192
)

Uses a callback which accepts `Update` for the `Digest` traits.

This is compatible with a broader range of signature algorithms,
e.g. ML-DSA external mu and vanilla EdDSA.

Resolves #2003.
Bumps the following:
- `pkcs8` v0.11.0-rc.7
- `sec1` v0.8.0-rc.10
Originally added in RustCrypto/MACs#151

The situation is `ecdsa` has a trait for the "default" hash function to
use for a particular curve, which we want to work with RFC6979 and ergo
HMAC, so we would like to use an `EagerHash` bound.

But `rfc6979` is an optional dependency, so we can't depend on its
transitive accessibility to `rfc6979::hmac`. This PR added `hmac` as a
dependency gated on the `digest` feature of `ecdsa`:

RustCrypto/signatures#1076

But as I was looking at `EagerHash` I noticed there's nothing
HMAC-specific about it at all and it can easily be moved to `digest`, so
we're able to use it in bounds without any other dependencies besides
`digest`, which would be nice.
test macro was correct but the file format of blobby changed and the
test files needed to be updated
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
⤵️ pull merge-conflict Resolve conflicts manually
Projects
None yet
Development

Successfully merging this pull request may close these issues.